На этой странице перечислены изменения в YouTube Data API (v3) и обновления документации.
30 сентября 2026 г.
Определение ресурса comments было обновлено и теперь включает новое свойство snippet.imageUrl, которое предоставляет URL изображения или анимированного GIF-файла, прикрепленного к комментарию.
Эта функция станет доступна всем пользователям в ноябре 2026 года.
14 сентября 2026 г.
В это обновление вошли следующие изменения.
- В описание метода
thumbnails.setдобавлено примечание о том, что максимальный размер файла для загружаемых значков увеличен с 2 до 50 МБ. - Описание метода
playlistImages.insertбыло обновлено. Теперь в нем указано, что максимальный размер загружаемых изображений был увеличен с 2 до 50 МБ.
11 сентября 2026 г.
В справочной документации по ресурсам activities, liveBroadcasts, playlistItems, playlists, search и videos обновлено определение свойства snippet.thumbnails.(key). Теперь для некоторых видео доступны значки с более высоким разрешением: fhd (1080p), qhd (1440p) и uhd (4K).
1 сентября 2026 г.
Теперь метод videos.getRating принимает область авторизации https://www.googleapis.com/auth/youtube.readonly.
27 августа 2026 г.
На YouTube будет использоваться единая методика подсчета общедоступных просмотров для всех форматов видео: обычных видео, трансляций и Shorts. Общедоступные просмотры на YouTube будут засчитываться сразу же после начала воспроизведения.
Требования для монетизации и большинство основных показателей эффективности не изменятся, поскольку они по-прежнему будут основаны на показателях вовлеченности. Доход авторов по-прежнему будет зависеть от количества заинтересованных просмотров Shorts и часов заинтересованного просмотра. Эти показатели можно найти в YouTube Аналитике > Расширенный режим.
Требования для участия в Партнерской программе YouTube не изменятся. Теперь мы будем называть пороговые значения для участия в Партнерской программе YouTube "учитываемыми просмотрами Shorts" и "учитываемыми часами просмотра". Ранее мы использовали термины "действительные общедоступные просмотры Shorts" и "действительные часы просмотра общедоступных видео".
Подробнее об анализе эффективности контента на YouTube…
| Показатель | Статус | Триггер | Для чего используется |
|---|---|---|---|
| Открыть | Обновлено | Видео воспроизводится с первого кадра (включая автовоспроизведение, наведение указателя и нажатие для воспроизведения). | Стандартные общедоступные просмотры. |
| Заинтересованный просмотр | Без изменений | Воспроизведение продолжается после первого кадра или пользователь нажимает на объявление, чтобы запустить его. | Монетизация в рамках Партнерской программы YouTube, большинство основных показателей (CTR, средняя продолжительность просмотра) и отчеты о вовлеченности. |
| Показ значка | Без изменений | Значок показывается без взаимодействия или автовоспроизведения. | Позволяет оценить видимость и упаковку на уровне фида. |
Обновление документации по API. Обновлено описание поля viewCount в справочной документации по каналам и видео.
6 августа 2026 г.
В это обновление вошли следующие изменения.
- Из общедоступной документации удалены все упоминания полей
contentDetails.likeиcontentDetails.favoriteв разделеactivities.contentDetails, поскольку эти поля не возвращаются API.
7 июля 2026 г.
В это обновление вошли следующие изменения.
Теперь API поддерживает часть brandPartner в ресурсе videos. В этом разделе содержится информация о бренде-партнере, связанном с видео, для которого автор предоставил доступ бренду-партнеру.
Часть brandPartner можно указать при вызове следующих методов:
Объект brandPartner содержит следующие поля:
channelId– внешний идентификатор канала партнера бренда.channelHandle– псевдоним канала партнера по бренду.
channelId или channelHandle, но в ответе возвращается только channelId.
23 июня 2026 г.
В это обновление вошли следующие изменения.
- Все ссылки на типы ресурсов
messageDeletedEventиmessageRetractedEvent(и соответствующие им объектыmessageDeletedDetailsиmessageRetractedDetails) вliveChatMessagesбыли удалены, поскольку эти события не возвращаются API.
3 июня 2026 г.
В это обновление вошли следующие изменения.
Теперь API поддерживает новый метод videos.batchGetStats, который позволяет получить список статистики видео, соответствующей параметрам запроса к API.
Вызов этого метода имеет стоимость квоты, равную 1 единице в собственном сегменте квоты. Квота по умолчанию для этого метода – 10 000 единиц в день.
1 июня 2026 г.
YouTube Data API переходит на систему детализированных квот, охватывающую меньшие наборы методов, начиная с videos.insert и search.list.
Это изменение упрощает процесс увеличения квоты, позволяя YouTube легче проверять и одобрять запросы на основе использования определенных методов. Этот переход также является ключевой частью нашего стремления к стабильности и безопасности платформы, гарантируя, что каждый разработчик может работать в защищенной экосистеме, сохраняя при этом уровни доступа, необходимые для одобренных вариантов использования.
Вызовы API для методов videos.insert и search.list будут учитываться в соответствующих сегментах квоты. Вызовы API для всех остальных методов будут оплачиваться из существующей квоты. Разработчики могут посмотреть лимиты квот в консоли Google Cloud и запросить дополнительные квоты, заполнив форму запроса на увеличение квоты.
4 декабря 2025 г.
Документация по YouTube Data API и калькулятор квот были обновлены, чтобы отразить изменение стоимости квоты на загрузку видео с примерно 1600 единиц до примерно 100 единиц.
10 июля 2025 г.
С 21 июля 2025 года YouTube будет корректировать контент, возвращаемый диаграммой mostPopular метода video.list. Раньше в хит-параде mostPopular показывались видео из списка "Набирающие популярность". Теперь в хит-параде mostPopular будут представлены видео из хит-парадов "Набирающие популярность" в категориях "Музыка", "Фильмы" и "Игры". Это изменение API связано с тем, что мы прекращаем поддержку страницы "В тренде".
26 марта 2025 г.
С 31 марта 2025 года просмотры Shorts будут считаться по-другому. Раньше просмотр Shorts засчитывался, если он длился определенное количество секунд. Теперь будут учитываться как первые, так и повторные просмотры Shorts без требований к минимальному времени просмотра. Подробнее…
С 31 марта 2025 г. следующие поля в Data API будут возвращать число просмотров Shorts с учетом этого изменения:
channels.statistics.viewCountvideos.statistics.viewCount
30 октября 2024 г.
Теперь API позволяет определять видео, в которых есть реалистичный измененный или синтетический (И/С) контент. Подробнее о правилах YouTube в отношении контента, предназначенного для взрослых…
Примеры контента для взрослых:
- Показывает, как реальный человек говорит или делает что-то, чего на самом деле он не говорил и не делал.
- Содержит измененные изображения реального места или события.
- Реалистично изображает событие, которого на самом деле не было.
Чтобы указать, содержит ли видео контент для взрослых, задайте значение свойства status.containsSyntheticMedia. Это свойство можно задать при вызове методов videos.insert или videos.update. Если задано, свойство возвращается в ресурсе video.
30 апреля 2024 г.
Примечание. Это объявление о прекращении поддержки.
В это обновление вошли следующие изменения.
API больше не поддерживает возможность добавлять или получать обсуждения на канале. Это изменение соответствует функциональности сайта YouTube, на котором нельзя оставлять комментарии на каналах.
13 марта 2024 г.
Примечание. Это объявление о прекращении поддержки.
В это обновление вошли следующие изменения.
Параметр sync для методов captions.insert и captions.update больше не поддерживается. YouTube прекратит поддержку этого параметра 12 апреля 2024 года.
В связи с этим изменением разработчики должны включать информацию о времени при вставке или обновлении дорожек субтитров, иначе загрузка не удастся.
12 марта 2024 г.
В это обновление вошли следующие изменения.
В документацию по ресурсу captions добавлено примечание о том, что максимальная длина поля snippet.name составляет 150 символов. Если название трека длиннее, API возвращает ошибку nameTooLong.
7 марта 2024 г.
Примечание. Это объявление об устаревании.
Свойство ресурса channel
brandingSettings.channel.moderateComments больше не поддерживается. YouTube прекратит поддержку этого параметра 7 марта 2024 года.
31 января 2024 г.
В это обновление вошли следующие изменения.
Новый параметр forHandle метода channels.list позволяет получать информацию о канале, указав его псевдоним на YouTube.
9 ноября 2023 г.
Все ссылки на ресурс videoId в разделе Comments были удалены, поскольку ресурс videoId не возвращается при вызове API.
12 сентября 2023 г.
Примечание. Это объявление об устаревании.
Метод comments.markAsSpam не поддерживается уже несколько лет. Этот метод уже не поддерживается на YouTube и в API.
Во все документы, в которых упоминается метод comments.markAsSpam, добавлено уведомление об устаревании.
22 августа 2023 г.
Метод search.list теперь поддерживает параметр videoPaidProductPlacement. Этот параметр позволяет отфильтровать результаты поиска, чтобы в них остались только видео, которые автор пометил как содержащие прямую рекламу.
18 августа 2023 г.
В описание свойства liveStreamingDetails.concurrentViewers ресурса video добавлено примечание о том, что количество одновременных просмотров, возвращаемое YouTube Data API, может отличаться от обработанного и очищенного от спама количества одновременных просмотров, доступного в YouTube Аналитике. Подробнее о показателях прямых трансляций можно узнать в Справочном центре YouTube.
7 августа 2023 г.
Как было объявлено 12 июня 2023 г., параметр relatedToVideoId метода search.list больше не поддерживается. Этот параметр больше не поддерживается, и ссылки на него удалены из документации по API.
28 июня 2023 г.
Метод thumbnails.set теперь поддерживает ошибку uploadRateLimitExceeded, которая указывает на то, что за последние 24 часа на канал было загружено слишком много значков. Повторите попытку позже.
12 июня 2023 г.
Примечание. Это объявление о прекращении поддержки.
Параметр relatedToVideoId метода search.list устарел. YouTube прекратит поддержку этого параметра 7 августа 2023 года.
В настоящее время в документацию по методу search.list добавлено уведомление о прекращении поддержки. Этот параметр будет полностью удален из документации по search.list 7 августа 2023 г. или позже.
Кроме того, из руководства по внедрению API удален пример, демонстрирующий, как получить похожие видео.
22 августа 2022 г.
Исправлены аннотации типов для полей video.statistics (вместо unsigned long теперь используется string).
5 августа 2022 г.
На YouTube изменился способ создания идентификаторов субтитров. Теперь всем дорожкам субтитров присваиваются новые идентификаторы. Это изменение может быть несовместимо с предыдущими версиями приложений, в которых хранятся значения caption_id, но не повлияет на приложения, в которых не хранятся значения caption_id.
До 1 декабря 2022 г. методы
captions.list,
captions.update,
captions.download и
captions.delete будут поддерживать как старые, так и новые идентификаторы дорожек субтитров. Однако 1 декабря 2022 г. или позже YouTube прекратит поддержку старых идентификаторов дорожек субтитров. После этого вызов любого из этих методов API со старым идентификатором дорожки субтитров будет приводить к ошибке captionNotFound.
Чтобы подготовиться к этому изменению, вам нужно полностью заменить все сохраненные данные дорожек субтитров до 1 декабря 2022 г. Это означает, что для любого видео, для которого вы храните данные дорожки субтитров, вам следует удалить текущие сохраненные данные, а затем вызвать метод captions.list, чтобы получить текущий набор дорожек субтитров для видео и сохранить данные в ответе API, как обычно.
12 июля 2012 г.
Условия использования сервисов YouTube API были изменены Подробную информацию вы найдете в истории изменений Условий использования сервисов YouTube API.
27 апреля 2022 г.
В описание метода videos.insert добавлено примечание о том, что максимальный размер загружаемых видео увеличен с 128 до 256 ГБ.
8 апреля 2022 г.
В определения параметров myRecentSubscribers и mySubscribers метода subscriptions.list добавлено примечание о том, что API может возвращать ограниченное количество подписчиков.
Это изменение касается только документации, а не работы API.
15 декабря 2021 г.
Как мы объявили 18 ноября 2021 г., в связи с изменениями, которые сделают счетчик дизлайков на YouTube приватным, свойство statistics.dislikeCount ресурса video теперь также является приватным.
Подробнее об этом изменении можно узнать в официальном блоге YouTube.
18 ноября 2021 г.
В связи с изменениями, которые делают количество отметок "Не нравится" у видео недоступным для просмотра на всей платформе YouTube, свойство statistics.dislikeCount ресурса video станет недоступным для просмотра с 13 декабря 2021 года. Это означает, что свойство будет включено в ответ API от конечной точки videos.list, только если запрос к API был аутентифицирован владельцем видео.
Изменение не затронет конечную точку videos.rate.
Разработчики, которые не показывают количество отметок "Не нравится" и которым оно нужно для клиентского приложения API, могут подать заявку на добавление в белый список исключений. Чтобы подать заявку на исключение, заполните эту форму.
Подробнее об этом изменении можно узнать в официальном блоге YouTube.
2 июля 2021 г.
Примечание. Это объявление об устаревании.
Конечная точка commentThreads.update устарела и больше не поддерживается.
Эта конечная точка дублировала функции, доступные через другие конечные точки API. Вместо этого вы можете вызвать метод comments.update.
commentThreads, выполните дополнительный вызов метода commentThreads.list.
1 июля 2021 г.
Чтобы получить квоту, превышающую стандартные 10 000 единиц, все разработчики, использующие сервисы API YouTube, должны пройти проверку на соответствие требованиям. До сих пор для проверки на соответствие требованиям и запроса на увеличение квоты разработчики заполняли и отправляли форму для запроса проверки и увеличения квоты сервисов YouTube API.
Чтобы сделать эти процессы понятнее и лучше удовлетворять потребности разработчиков, использующих наши API, мы добавили три новые формы и руководство по их заполнению:
- Форма для запроса проверки и увеличения квоты. Разработчики, которые уже прошли проверку на соответствие требованиям API, могут заполнить и отправить эту форму, чтобы запросить увеличение квоты. Для этого в первом вопросе нужно выбрать вариант "Я хочу пройти проверку на соответствие требованиям, чтобы сохранить текущую квоту (мне пришел запрос на повторную проверку)".
- Форма апелляции. Разработчики, чьи проекты API не прошли проверку на соответствие требованиям или которым было отказано в увеличении квоты, могут заполнить и отправить эту форму.
- Форма смены контроля. Разработчики или любые лица, действующие от их имени, которые столкнулись со сменой контроля (например, в результате покупки или продажи акций, слияния или другой корпоративной сделки), связанной с API-клиентом, должны заполнить и отправить эту форму. Это позволит команде API YouTube обновить наши записи, проверить соответствие нового проекта API правилам и подтвердить текущую квоту разработчика.
Каждая новая форма будет информировать нас о том, как вы планируете использовать API YouTube, и позволит нам лучше помогать вам.
Подробная информация приведена в новом руководстве по проверке соответствия API.
12 мая 2021 г.
Примечание. Это объявление о прекращении поддержки.
В этом обновлении API произошли следующие изменения:
-
Свойство
contentDetails.relatedPlaylists.favoritesресурсаchannelбольше не поддерживается. Функция "Избранное" была отключена несколько лет назад, как указано в записи от 28 апреля 2016 г. в истории изменений.До этого обновления API создавал новый плейлист, если API-клиент пытался добавить видео в несуществующий плейлист "Понравившиеся". В дальнейшем в таких случаях плейлист создаваться не будет, а API вернет ошибку. Попытки изменить плейлисты избранного, добавляя, изменяя или удаляя элементы, также считаются устаревшими согласно предыдущим объявлениям и могут начать возвращать ошибки в любое время.
-
Поддержка перечисленных ниже свойств ресурса
channelпрекращена. Эти свойства уже не поддерживаются в интерфейсе Творческой студии YouTube и на YouTube. В связи с этим они также больше не поддерживаются в API.brandingSettings.channel.defaultTabbrandingSettings.channel.featuredChannelsTitlebrandingSettings.channel.featuredChannelsUrls[]brandingSettings.channel.profileColorbrandingSettings.channel.showBrowseViewbrandingSettings.channel.showRelatedChannels
Все свойства удалены из
channelпредставления ресурса, а их определения удалены из списка свойств ресурса. Кроме того, из документации по методам были удалены ошибки, связанные с этими свойствами. -
Указанные ниже свойства ресурса
channelSectionне поддерживаются: Эти свойства уже не поддерживаются в интерфейсе Творческой студии YouTube и на YouTube. В связи с этим они также больше не поддерживаются в API.snippet.stylesnippet.defaultLanguagesnippet.localized.titlelocalizationslocalizations.(key)localizations.(key).titletargetingtargeting.languages[]targeting.regions[]targeting.countries[]
В связи с этим изменением параметр
hlметодаchannelSection.listтакже был объявлен устаревшим, поскольку функции, которые он поддерживает, больше не поддерживаются.Все свойства были удалены из представления ресурса
channelSection, а их определения – из списка свойств ресурса. Кроме того, из документации по методам удалены ошибки, связанные с этими свойствами. -
Для свойства
snippet.typeресурсаchannelSectionбольше не поддерживаются следующие значения: Эти значения уже не поддерживаются на страницах каналов YouTube и, как следствие, больше не поддерживаются в API.likedPlaylistslikespostedPlaylistspostedVideosrecentActivityrecentPosts
-
Свойство
snippet.tags[]ресурсаplaylistбольше не поддерживается. Это свойство уже не поддерживается на YouTube и, как следствие, в API.
9 февраля 2021 г.
Ресурс playlistItem поддерживает два новых свойства:
- Свойство
snippet.videoOwnerChannelIdпозволяет указать идентификатор канала, на который было загружено видео из плейлиста. - Свойство
snippet.videoOwnerChannelTitleсодержит название канала, на который было загружено видео из плейлиста.
28 января 2021 г.
В это обновление вошли следующие изменения.
-
Методы
playlistItems.delete,playlistItems.insert,playlistItems.list,playlistItems.update,playlists.delete,playlists.listиplaylists.updateтеперь поддерживают новую ошибкуplaylistOperationUnsupported. Ошибка возникает, когда запрос пытается выполнить операцию, которая не разрешена для определенного плейлиста. Например, пользователь не может удалить видео из плейлиста загруженных видео или удалить сам плейлист.Во всех случаях эта ошибка возвращает код ответа HTTP
400(недопустимый запрос). -
Из документации удалены ошибки
watchHistoryNotAccessibleиwatchLaterNotAccessibleметодаplaylistItems.list. Хотя история просмотра и список "Посмотреть позже" действительно недоступны через API, эти ошибки не возвращаются API.
15 октября 2020 г.
В правила для разработчиков добавлены два новых раздела:
- В новом разделе III.E.4.i приведена дополнительная информация о данных, которые собираются и отправляются через встроенный проигрыватель YouTube. Вы несете ответственность за любые пользовательские данные, которые отправляете нам через встроенный проигрыватель YouTube до того, как пользователь начнет взаимодействовать с проигрывателем, чтобы начать воспроизведение. Вы можете ограничить объем данных, передаваемых YouTube до того, как пользователь начнет взаимодействовать с проигрывателем, отключив автовоспроизведение.
- Новый пункт III.E.4.j касается проверки статуса "Сделано для детей" (MFK) контента перед его встраиванием на ваши сайты и в приложения. Вы несете ответственность за то, чтобы знать, когда видео, встроенные в ваш клиент API, предназначены для детей, и соответствующим образом обрабатывать данные, собранные с помощью встроенного проигрывателя. Поэтому перед тем, как встраивать контент в клиент API с помощью встроенных проигрывателей YouTube, необходимо проверить его статус с помощью YouTube Data API Service.
В новом руководстве Как узнать, предназначен ли контент для детей рассказывается, как проверить статус видео с помощью YouTube Data API.
В связи с этими изменениями в документацию по параметрам встроенного проигрывателя добавлено напоминание о том, что если включить автовоспроизведение, воспроизведение начнется без взаимодействия пользователя с проигрывателем. Таким образом, сбор и передача данных о воспроизведении будут выполняться при загрузке страницы.
8 октября 2020 г.
Это обновление включает три небольших изменения, связанных с ресурсом channel:
- Объект
snippet.thumbnails, который содержит информацию о значках канала, может быть пустым для недавно созданных каналов. Данные в нем появляются в течение суток. - Свойство
statistics.videoCountотражает количество только общедоступных видео на канале, даже для владельцев. Это соответствует данным, которые показываются на сайте YouTube. - Ключевые слова канала, указанные в свойстве
brandingSettings.channel.keywords, могут быть усечены, если их длина превышает 500 символов или если они содержат неэкранированные кавычки ("). Обратите внимание, что ограничение в 500 символов относится не к каждому ключевому слову, а к их общей длине. Такой же принцип действует и на сайте YouTube.
9 сентября 2020 г.
Примечание. Это объявление о прекращении поддержки.
В этом обновлении представлены следующие изменения API. Все изменения вступят в силу 9 сентября 2020 г. или позднее. Поэтому разработчикам больше не следует полагаться на функции API, перечисленные ниже.
-
Следующие ресурсы, методы, параметры и свойства ресурсов API устарели и перестанут работать в день публикации этого объявления или позже:
- Следующие свойства ресурса
channel:- Свойство
statistics.commentCount - Объект
brandingSettings.imageи все его дочерние ресурсы. brandingSettings.hintsсписок и все его дочерние свойства
- Свойство
- Параметр фильтра
categoryIdметодаchannels.list - Ресурс
guideCategoriesи методguideCategories.list
- Следующие свойства ресурса
-
Ответы API для метода
channels.listбольше не содержат свойствоprevPageToken, если в запросе к API для параметраmanagedByMeзадано значениеtrue. Это изменение не влияет на свойствоprevPageTokenдля других запросовchannels.listи на свойствоnextPageTokenдля любых запросов. -
11 августа 2016 года было объявлено о прекращении поддержки свойств
contentDetails.relatedPlaylists.watchLaterиcontentDetails.relatedPlaylists.watchHistoryресурсаchannel. Поддержка этих плейлистов в методахplaylistItems.insertиplaylistItems.deleteтакже полностью прекращена, а два свойства удалены из документации. -
Параметр
mySubscribersметодаchannels.list, о прекращении поддержки которого было объявлено 30 июля 2013 г., удален из документации. Используйте методsubscriptions.listи его параметрmySubscribers, чтобы получить список подписчиков канала аутентифицированного пользователя. -
Из документации удален объект
invideoPromotionресурсаchannelи все его дочерние свойства, которые были объявлены устаревшими 27 ноября 2017 г..
29 июля 2020 г.
Мы упростили процесс списания квоты за запросы к API, убрав дополнительную плату, связанную с параметром part. С этого момента мы будем взимать только базовую стоимость за вызванный метод. Подробнее об упрощенной квоте…
В результате этого изменения стоимость большинства вызовов API будет немного ниже, а некоторых – останется прежней. Это изменение не увеличивает стоимость вызовов API. В целом это означает, что выделенной квоты, которую можно посмотреть в консоли Google Cloud, будет хватать на большее количество операций.
Мы настоятельно рекомендуем всем разработчикам пройти проверку на соответствие правилам для своих проектов, чтобы сохранить доступ к сервисам YouTube API.
Эта запись в истории изменений была опубликована 20 июля 2020 г.
28 июля 2020 г.
Все видео, загруженные через конечную точку videos.insert из непроверенных проектов API, созданных после 28 июля 2020 года, будут доступны только для личного просмотра. Чтобы снять это ограничение, каждый проект должен пройти аудит на соответствие Условиям использования.
Авторы, которые загружают видео с помощью неподтвержденного API-клиента, получают электронное письмо с информацией о том, что их видео имеет принудительный ограниченный доступ и что они могут избежать ограничений, используя официальный или проверенный клиент.
Проекты API, созданные до 28 июля 2020 г., пока не затронуты этим изменением. Однако мы настоятельно рекомендуем всем разработчикам провести аудит на соответствие требованиям, чтобы сохранить доступ к сервисам YouTube API.
21 июля 2020 г.
[Обновлено 28 июля 2020 г.] Обновление документации, упомянутое в записи истории изменений, было опубликовано повторно 28 июля 2020 г.
Вчера мы опубликовали обновление документации, связанное с процессом взимания платы за квоту. Однако из-за непредвиденных обстоятельств изменение квоты ещё не вступило в силу. В результате документация была возвращена в исходное состояние в интересах точности. Чтобы избежать путаницы, мы удалили запись об этом изменении из истории версий. Она будет опубликована повторно в ближайшее время.
7 июля 2020 г.
Примечание. Это объявление об устаревании.
Параметры autoLevels и stabilize метода videos.insert больше не поддерживаются и удалены из документации. Их значения игнорируются и не влияют на обработку новых видео.
15 июня 2020 г.
В новом руководстве Соблюдение правил YouTube для разработчиков приведены инструкции и примеры, которые помогут вам убедиться, что ваши API-клиенты соответствуют определенным разделам Условий использования и правил сервисов YouTube API.
В этом руководстве рассказывается, как YouTube обеспечивает соблюдение определенных аспектов Условий использования API, но оно не заменяет другие документы. В нем рассматриваются некоторые из наиболее распространенных вопросов, которые возникают у разработчиков во время проверок на соответствие требованиям API. Надеемся, что это упростит процесс разработки функций и поможет вам понять, как мы интерпретируем и применяем наши правила.
4 июня 2020 г.
Примечание. Это обновление предыдущего объявления о прекращении поддержки.
Мы полностью прекратили поддержку записей на канале. Об этом изменении было объявлено 17 апреля 2020 г., и теперь оно вступило в силу. В результате метод activities.insert больше не поддерживается, а метод activities.list больше не возвращает записи на канале. Подробную информацию вы найдете в Справочном центре YouTube.
17 апреля 2020 г.
Примечание. Это объявление о прекращении поддержки.
Мы прекращаем поддержку записей на канале. В результате метод activities.insert будет признан устаревшим, а метод activities.list перестанет возвращать сообщения канала. Эти изменения вступят в силу в API 18 мая 2020 г. или позже. Подробную информацию вы найдете в Справочном центре YouTube.
31 марта 2020 г.
В это обновление вошли следующие изменения.
-
Новые ресурсы и методы
-
Новый ресурс
memberпредставляет спонсора канала YouTube. Спонсоры регулярно поддерживают авторов материально и получают за это эксклюзивные бонусы. Например, спонсоры могут общаться в чате, если автор включил режим "Только для спонсоров".Этот ресурс заменяет ресурс
sponsor, который описан в документации по YouTube Live Streaming API. Ресурсsponsorбольше не поддерживается. API-клиентам необходимо обновить вызовы методаsponsors.list, чтобы вместо него использовался методmembers.list. -
Новый ресурс
membershipsLevelопределяет уровень цен, управляемый автором, который авторизовал запрос к API. МетодmembershipsLevels.listпозволяет получить список всех уровней спонсорства на канале.
-
10 января 2020 г.
Теперь API позволяет определять контент, предназначенный для детей. Подробнее о контенте «для детей» в Справочном центре YouTube.
Ресурсы channel и video поддерживают два новых свойства, которые позволяют авторам и зрителям определять контент, предназначенный для детей:
-
Свойство
selfDeclaredMadeForKidsпозволяет авторам контента указывать, предназначен ли канал или видео для детей.
Для каналов это свойство можно задать при вызове методаchannels.update. Для видео это свойство можно задать при вызове методовvideos.insertилиvideos.update.
Обратите внимание, что это свойство включается в ответы API, содержащие ресурсыchannelилиvideo, только если владелец канала авторизовал запрос к API. -
Свойство
madeForKidsпозволяет любому пользователю узнать, предназначен ли канал или видео для детей. Например, статус может определяться на основе значения свойстваselfDeclaredMadeForKids. Подробнее о том, как указать аудиторию канала, видео или трансляции, рассказывается в Справочном центре YouTube.
Мы также обновили Условия использования сервисов YouTube API и правила для разработчиков. Подробную информацию вы найдете в истории изменений Условий использования сервисов YouTube API. Изменения в Условиях использования сервисов YouTube API и Правилах для разработчиков вступят в силу 10 января 2020 года по тихоокеанскому времени.
10 сентября 2019 г.
Документация по API была обновлена в связи с изменением способа подсчета подписчиков на YouTube и, следовательно, в ответах API. В результате этого изменения число подписчиков, возвращаемое сервисом YouTube Data API, округляется в меньшую сторону до трех значащих цифр, если оно превышает 1000. Это изменение затрагивает свойство statistics.subscriberCount ресурса channel.
Примечание. Это изменение влияет на значение свойства, даже если пользователь отправляет авторизованный запрос на получение данных о своем канале. Владельцы каналов по-прежнему могут видеть точное число подписчиков в Творческой студии YouTube.
Например, если у канала 123 456 подписчиков, свойство statistics.subscriberCount будет содержать значение 123000.
В таблице ниже приведены примеры того, как число подписчиков округляется в ответах API и сокращается в других общедоступных пользовательских интерфейсах YouTube.
| Пример нового формата | YouTube Data API | Общедоступные интерфейсы YouTube |
|---|---|---|
| 1234 | 1230 | 1,23 тыс. |
| 12 345 | 12300 | 12,3 тыс. |
| 123 456 | 123000 | 123 тыс. |
| 1 234 567 | 1230000 | 1,23 млн |
| 12 345 678 | 12300000 | 12,3 млн |
| 123,456,789 | 123000000 | 123 млн |
4 апреля 2019 г.
В это обновление вошли следующие изменения.
-
В справочной документации по API теперь более подробно описаны распространенные сценарии использования каждого метода, а также приведены динамические и качественные примеры кода с помощью виджета APIs Explorer. Пример приведен в документации по методу
channels.list. На страницах с описанием методов API теперь есть два новых элемента:-
Виджет API Explorer позволяет выбирать области авторизации, вводить примеры значений параметров и свойств, а затем отправлять фактические запросы к API и просматривать фактические ответы API. Виджет также можно развернуть на весь экран, чтобы посмотреть полные примеры кода, которые динамически обновляются в соответствии с введенными вами областями действия и значениями.
-
В разделе Распространенные случаи использования описаны один или несколько распространенных случаев использования метода, описанного на странице. Например, вы можете вызвать метод
channels.list, чтобы получить данные об определенном канале или о канале текущего пользователя.Вы можете использовать ссылки в этом разделе, чтобы заполнить API Explorer примерами значений для вашего варианта использования или открыть API Explorer в полноэкранном режиме с уже заполненными значениями. Благодаря этому вам будет проще находить примеры кода, которые подходят для вашего приложения.
В настоящее время поддерживаются примеры кода для Java, JavaScript, PHP, Python и curl.
-
-
Инструмент Примеры кода также получил новый интерфейс, в котором доступны все описанные выше функции. С его помощью вы можете изучать варианты использования разных методов, загружать значения в API Explorer и открывать полноэкранный режим API Explorer, чтобы получать примеры кода на Java, JavaScript, PHP и Python.
В связи с этим мы удалили страницы, на которых ранее были перечислены доступные примеры кода для Java, JavaScript, PHP и Python.
-
Обновлены руководства по началу работы с Java, JavaScript, PHP и Python. В обновленных руководствах объясняется, как запустить один пример с ключом API, а другой – с идентификатором клиента OAuth 2.0, используя примеры кода из API Explorer.
Обратите внимание, что описанные выше изменения заменяют интерактивный инструмент, который был добавлен в документацию API в 2017 году.
9 июля 2018 г.
В это обновление вошли следующие изменения.
-
Определение свойства
snippet.thumbnailsресурсаchannelбыло обновлено. Теперь в нем указано, что при показе в приложении уменьшенных изображений код должен использовать URL изображений в том виде, в котором они возвращаются в ответах API. Например, в URL, возвращаемом в ответе API, не следует использовать доменhttpвместо доменаhttps.С июля 2018 года URL значков каналов будут доступны только в домене
https. Именно в таком виде они будут возвращаться в ответах API. После этого в вашем приложении могут появиться неработающие изображения, если оно попытается загрузить изображения YouTube из доменаhttp. -
Примечание. Это объявление об устаревании.
Свойство
recordingDetails.location.altitudeресурсаvideoбольше не поддерживается. Нет гарантии, что для видео будут возвращены значения этого свойства. Аналогично, даже если запросы к API попытаются задать значение для этого свойства, возможно, что входящие данные не будут сохранены.
22 июня 2018 г.
Руководство по внедрению, ранее известное как руководство по внедрению и переносу, было обновлено. Из него удалены инструкции по переходу с API версии 2 на API версии 3. Кроме того, мы удалили инструкции для функций, которые были признаны устаревшими в API версии 3, например для добавления видео в избранное.
27 ноября 2017 г.
В это обновление вошли следующие изменения.
-
Примечание. Это объявление о прекращении поддержки.
YouTube прекращает поддержку функций Рекомендованное видео и Рекомендованный сайт, которые поддерживаются в API через объект
invideoPromotionресурсаchannel. В результате этот объект и все его дочерние свойства будут удалены.Вы можете получать и задавать данные
invideoPromotionдо 14 декабря 2017 г. После окончания платежного периода:- При попытке получить часть
invideoPromotionпри вызовеchannels.listбудет возвращено пустое значениеinvideoPromotionили не будет возвращено никаких данныхinvideoPromotion. - Попытки обновить данные
invideoPromotionпри вызовеchannels.updateбудут возвращать успешный ответ по крайней мере до 27 мая 2018 г., но они будут рассматриваться как пустые операции, то есть фактически не будут выполнять обновление.
После 27 мая 2018 года в ответ на такие запросы могут возвращаться сообщения об ошибках, например о том, что
invalidPromotion– недопустимый параметр. - При попытке получить часть
16 ноября 2017 г.
В это обновление вошли следующие изменения.
-
Интерактивный инструмент для работы с фрагментами кода теперь поддерживает примеры кода Node.js. Примеры также доступны в документации почти для всех методов API, например для метода
channels.list.Настраиваемые примеры предназначены для того, чтобы дать вам отправную точку для конкретного случая использования приложения Node.js. Функциональность аналогична коду в кратком руководстве по Node.js. Однако в примерах есть некоторые служебные функции, которые не упоминаются в кратком руководстве:
- Функция
removeEmptyParametersпринимает список пар "ключ-значение", соответствующих параметрам запроса к API, и удаляет параметры, у которых нет значений. - Функция
createResourceпринимает список пар "ключ-значение", соответствующих свойствам ресурса API. Затем он преобразует свойства в объект JSON, который можно использовать в операцияхinsertиupdate. В примере ниже показаны названия и значения свойств, а также объект JSON, который будет создан на основе этого кода:# Key-value pairs: {'id': 'ABC123', 'snippet.title': 'Resource title', 'snippet.description': 'Resource description', 'status.privacyStatus': 'private'} # JSON object: { 'id': 'ABC123', 'snippet': { 'title': 'Resource title', 'description': 'Resource description', }, 'status': { 'privacyStatus': 'private' } }
Все эти примеры предназначены для скачивания и локального запуска. Дополнительную информацию вы найдете в разделе Локальный запуск полных примеров кода в инструкциях к инструменту для работы с фрагментами кода.
- Функция
25 октября 2017 г.
В это обновление вошли следующие изменения.
-
В инструменте для работы с интерактивными фрагментами кода обновлены примеры кода на Python. Теперь в них используются библиотеки
google-authиgoogle-auth-oauthlibвместо библиотекиoauth2client, поддержка которой прекращена.Кроме того, теперь инструмент предоставляет полные примеры кода для установленных приложений Python и приложений веб-сервера Python, которые используют немного разные потоки авторизации. Чтобы посмотреть полные примеры (в том числе с этим изменением):
- Перейдите к интерактивному инструменту для работы с фрагментами кода или к документации по любому методу API, например
channels.list. - Нажмите на вкладку
Pythonнад примерами кода. - Чтобы переключиться с фрагмента на полный образец, нажмите на переключатель над вкладками.
- На вкладке должен появиться полный пример кода, в котором используется поток авторизации
InstalledAppFlow. Это объясняется в описании над примером, где также приведена ссылка на пример для приложения веб-сервера. - Нажмите на ссылку, чтобы перейти к примеру веб-сервера. В этом примере используется веб-фреймворк Flask и другой процесс авторизации.
Все эти примеры предназначены для скачивания и локального запуска. Если вы хотите запустить примеры, следуйте инструкциям по локальному запуску полных примеров кода в инструкциях по использованию инструмента для создания фрагментов кода.
- Перейдите к интерактивному инструменту для работы с фрагментами кода или к документации по любому методу API, например
29 августа 2017 г.
В это обновление вошли следующие изменения.
- В определение параметра
forContentOwnerметодаsearch.listдобавлено примечание о том, что если для этого параметра задано значениеtrue, то для параметраtypeнеобходимо задать значениеvideo. - Определение параметра
regionCodeметодаsearch.listбыло изменено, чтобы уточнить, что этот параметр ограничивает результаты поиска видео, которые можно посмотреть в указанном регионе. - Мы обновили логотипы и значки YouTube. Новые логотипы "Разработано с помощью YouTube" можно скачать на странице правил фирменного оформления. Другие новые логотипы и значки YouTube также показаны на этой странице и могут быть скачаны с сайта бренда YouTube.
24 июля 2017 г.
В это обновление вошли следующие изменения.
- Для iOS доступно новое краткое руководство по YouTube Data API. В этом руководстве рассказывается, как использовать YouTube Data API в простом приложении для iOS, написанном на Objective-C или Swift.
- Интерактивный инструмент для создания фрагментов кода для YouTube Data API теперь включает документацию, в которой объясняются некоторые функции инструмента:
- Выполнение запросов к API
- Переключение между фрагментами кода и полными примерами кода
- Как использовать шаблонные функции
- Загрузка существующих ресурсов (для методов обновления)
Примечание. Инструмент также встроен в справочную документацию по API для методов API (пример).
1 июня 2017 г.
В это обновление вошли следующие изменения.
-
Примечание. Это объявление о прекращении поддержки.
Поддержка следующих свойств ресурса
videoпрекращается. Хотя поддержка этих свойств будет прекращена только 1 декабря 2017 года, мы не гарантируем, что до этого времени видео будут возвращать значения для них. Аналогично, запросыvideos.insertиvideos.update, в которых заданы эти значения свойств, не будут вызывать ошибок до этой даты, но входящие данные могут не сохраняться.
17 мая 2017 г.
В это обновление вошли следующие изменения.
-
Документация по API была обновлена, чтобы сделать фрагменты кода более распространенными и интерактивными. На страницах с описанием методов API, например
channels.listилиvideos.rate, теперь есть интерактивный инструмент, который позволяет просматривать и настраивать фрагменты кода на Java, JavaScript, PHP, Python, Ruby, Apps Script и Go.Для каждого метода инструмент показывает фрагменты кода для одного или нескольких вариантов использования, и каждый вариант описывает распространенный способ вызова этого метода. Например, вы можете вызвать метод
channels.list, чтобы получить данные об определенном канале или о канале текущего пользователя.Вы также можете взаимодействовать с примерами кода:
-
Измените значения параметров и свойств, и фрагменты кода будут динамически обновлены с учетом указанных вами значений.
-
Переключайтесь между фрагментами кода и полными примерами. Фрагмент кода, в котором вызывается метод API. Полный образец содержит этот фрагмент, а также шаблонный код для авторизации и отправки запросов. Полные примеры можно скопировать и запустить из командной строки или с локального веб-сервера.
-
Выполнять запросы нажатием кнопки. Чтобы выполнять запросы, вам нужно разрешить инструменту вызывать API от вашего имени.
Обратите внимание, что этот инструмент заменил API Explorer на страницах, где он доступен. На каждой странице есть ссылка, позволяющая загрузить запрос, с которым вы работаете, в API Explorer.
-
-
Инструмент Фрагменты кода Data API также был обновлен и получил новый интерфейс, в котором доступны все описанные выше функции. Основные новые функции, доступные на этой странице:
- Поддержка запросов к API, которые записывают данные.
- Поддержка примеров на языке Java.
- Более гибкий и полный шаблонный код для авторизации пользователей и создания запросов к API.
27 апреля 2017 г.
В это обновление вошли следующие изменения.
- В новых руководствах по быстрому началу работы объясняется, как настроить простое приложение, которое отправляет запросы к YouTube Data API. В настоящее время доступны руководства для Android, Apps Script, Go, Java, JavaScript, Node.js, PHP, Python и Ruby.
30 марта 2017 г.
В это обновление вошли следующие изменения.
- Новое свойство
topicDetails.topicCategories[]ресурсаchannelсодержит список URL страниц Википедии, описывающих контент канала. URL соответствуют идентификаторам тем, возвращаемым в свойствеtopicDetails.topicIds[]ресурса. - Новое свойство
contentDetails.videoPublishedAtресурсаplaylistItemпозволяет узнать, когда видео было опубликовано на YouTube. Ресурс уже содержит свойствоsnippet.publishedAt, которое определяет время добавления объекта в плейлист. - Как и ресурс
channel, ресурсvideoтеперь возвращает свойствоtopicDetails.topicCategories[], которое содержит список URL страниц Википедии, описывающих контент видео. Для ресурсовvideoURL соответствуют идентификаторам тем, возвращаемым в свойствеtopicDetails.relevantTopicIds[]ресурса. - Новое свойство
contentDetails.contentRating.mpaatRatingресурсаvideoопределяет рейтинг, который Американская ассоциация кинокомпаний присвоила трейлеру или анонсу фильма.
27 февраля 2017 г.
Как было объявлено 11 августа 2016 года, YouTube перешел на использование курируемого списка идентификаторов тем. Полный список поддерживаемых идентификаторов тем приведен в свойствах topicDetails для ресурсов channel и video, а также в параметре topicId метода search.list.
Обратите внимание, что в список внесены следующие изменения:
- Следующие темы были добавлены в качестве подтем для темы
Society:Название идентификатор темы; Бизнес /m/09s1fЗдоровье /m/0kt51Вооруженные силы /m/01h6rjПолитика /m/05qt0Религия /m/06bvp - Тема
Animated cartoon, ранее входившая в темуEntertainment, удалена. - Тема
Children's music, ранее входившая в темуMusic, удалена.
Теперь темы, связанные с видео, всегда возвращаются в значении свойства topicDetails.relevantTopicIds[] ресурса video.
29 ноября 2016 г.
В это обновление вошли следующие изменения.
-
10 февраля 2017 г. в список поддерживаемых идентификаторов тем будут внесены три небольших изменения:
- Категория
Professional wrestling, которая ранее была дочерней для категорииSports, теперь является дочерней для категорииEntertainment. - Категория
TV shows, которая является дочерней по отношению к категорииEntertainment, является новой. - Категория
Health, которая ранее была дочерней дляLifestyle, удалена.
Также обратите внимание, что есть несколько родительских категорий (
Entertainment,Gaming,Lifestyle,MusicиSports). Любое видео, связанное с дочерней категорией, напримерTennis, также будет связано с родительской категорией (Sports). - Категория
10 ноября 2016 г.
В это обновление вошли следующие изменения.
-
Как мы впервые сообщили 11 августа 2016 г., прекращение поддержки Freebase и Freebase API требует внесения ряда изменений, связанных с идентификаторами тем. Идентификаторы тем позволяют определить темы, связанные с ресурсами
channelиvideo. Кроме того, вы можете использовать параметр поискаtopicId, чтобы найти каналы или видео, связанные с определенной темой.10 февраля 2017 года YouTube начнет возвращать небольшой набор идентификаторов тем вместо гораздо более детализированного набора идентификаторов, возвращаемых до сих пор. Кроме того, обратите внимание, что каналы и видео не обязательно связаны с какими-либо темами. Это соответствует текущему поведению API.
Чтобы вы могли подготовить свои API-клиенты к этим изменениям, в определения следующих параметров и свойств API были добавлены идентификаторы тем, которые будут поддерживаться после указанной даты. Обратите внимание, что список категорий одинаков для всех ресурсов.
- Свойство
topicDetails.topicIds[]ресурсаchannel. - Свойство
topicDetails.relevantTopicIds[]ресурсаvideo. - Параметр
topicIdметодаsearch.list.
- Свойство
-
Примечание. Это объявление об устаревании.
Мы прекращаем поддержку следующих свойств:
- Свойство
topicDetails.topicIds[]ресурсаchannel. Поддержка этого ресурса будет осуществляться до 10 ноября 2017 г. - Свойство
topicDetails.relevantTopicIds[]ресурсаvideo. Это свойство будет поддерживаться до 10 ноября 2017 г. - Свойство
topicDetails.topicIds[]ресурсаvideo. После 10 февраля 2017 г. это свойство не будет содержать никаких значений. После этой даты значение свойстваtopicDetails.relevantTopicIds[]будет определять все темы, связанные с видео.
- Свойство
-
Поскольку поддержка Freebase уже прекращена, руководство Поиск по темам Freebase удалено из документации. В нем содержались примеры кода, показывающие, как приложение будет работать с Freebase API.
Кроме того, из документации по методу
search.listудалены несколько примеров кода, связанных с идентификаторами тем.
2 ноября 2016 г.
В это обновление вошли следующие изменения.
-
Новые свойства и параметры
-
Ресурс
videoсодержит несколько новых свойств:-
Свойство
player.embedHtmlсодержит тег<iframe>, который можно использовать для встраивания проигрывателя, воспроизводящего видео. Новые свойстваplayer.embedHeightиplayer.embedWidthопределяют размеры встроенного проигрывателя. Эти свойства возвращаются, только если в запросе к API указано значение хотя бы для одного из параметровmaxHeightилиmaxWidth. Эти два новых параметра описаны ниже в этой записи истории изменений. -
Новое свойство
hasCustomThumbnailуказывает, добавил ли пользователь, загрузивший видео, свой значок для него. Обратите внимание, что это свойство видно только автору видео. -
Новый тег
fpbRatingReasons[]содержит причины, по которым видео получило рейтинг FPB (ЮАР). -
Новое значение
mcstRatingуказывает на возрастной рейтинг видео во Вьетнаме.
-
-
Метод
videos.listподдерживает два новых параметра:maxHeightиmaxWidth. При получении частиplayerв ресурсахvideoможно использовать один из этих параметров или оба.По умолчанию высота
<iframe>, возвращаемая в свойствеplayer.embedHtml, составляет 360 пикселей. Ширина проигрывателя будет автоматически подстраиваться под соотношение сторон видео, чтобы по краям не было черных полос. Например, если соотношение сторон видео составляет 16:9, ширина проигрывателя будет равна 640 пкс.С помощью новых параметров можно указать, что вместо размеров по умолчанию код должен использовать высоту и/или ширину, подходящую для макета приложения. Сервер API масштабирует размеры проигрывателя, чтобы в нем не было черных полос по краям видео. Обратите внимание, что оба параметра задают максимальные размеры встроенного проигрывателя. Таким образом, если заданы оба параметра, один из размеров может быть меньше максимально допустимого.
Например, если соотношение сторон видео 16:9, Таким образом, если параметры
maxHeightиmaxWidthне заданы, тегplayer.embedHtmlбудет содержать проигрыватель размером 640 x 360.- Если для параметра
maxHeightзадано значение720, а параметрmaxWidthне задан, API вернет проигрыватель размером 1280 x 720. - Если для параметра
maxWidthзадано значение960, а параметрmaxHeightне задан, API вернет проигрыватель размером 960 x 540. - Если для параметра
maxWidthзадано значение960, а для параметраmaxHeight– значение450, API вернет проигрыватель размером 800 x 450.
Новые свойства
player.embedHeightиplayer.embedWidth, описанные выше, определяют размеры проигрывателя. - Если для параметра
-
-
Обновления существующих методов, свойств и параметров
-
В описание ресурса
channelSectionдобавлено примечание о том, что на канале можно создать не более 10 разделов без данных таргетинга и не более 100 разделов с данными таргетинга.Кроме того, свойство
targetingресурсаchannelSectionбыло обновлено, чтобы отразить тот факт, что параметры таргетинга можно задать только с помощью API. Если вы измените раздел канала в пользовательском интерфейсе YouTube, настройки таргетинга будут удалены. -
Определение свойства
snippet.nameресурсаi18nLanguageбыло исправлено, чтобы отразить, что значение представляет собой название языка, написанное на языке, указанном в параметреhlметодаi18nLanguage.list. -
В ресурс
playlistItemдобавлено примечание о том, что максимальная длина значения свойстваcontentDetails.noteсоставляет 280 символов. -
Свойства
contentDetails.startAtиcontentDetails.endAtресурсаplaylistItemбольше не поддерживаются. Если эти поля заданы в запросахplaylistItems.insertилиplaylistItems.update, они игнорируются. -
Методы
playlistItems.deleteиplaylistItems.updateтеперь поддерживают параметрonBehalfOfContentOwner, который уже поддерживается для нескольких других методов. Запросы, в которых используется этот метод, также должны быть авторизованы с помощью токена, предоставляющего доступ к области действияhttps://www.googleapis.com/auth/youtubepartner. -
Параметры
publishedBeforeиpublishedAfterметодаsearch.listбыли обновлены, чтобы указать, что значения параметров являются инклюзивными. Например, если задан параметрpublishedBefore, API возвращает ресурсы, созданные в указанное время или ранее. -
Свойство
contentDetails.contentRating.grfilmRatingресурсаvideoподдерживает три дополнительных значения:grfilmK12,grfilmK15иgrfilmK18. -
В описание метода
videos.insertдобавлено примечание о том, что максимальный размер загружаемых видеофайлов увеличен с 64 до 128 ГБ.
-
-
Новые и обновленные ошибки
-
API поддерживает следующие новые ошибки:
Тип ошибки Сведения об ошибке Описание forbidden (403)homeParameterDeprecatedМетод activities.listвозвращает эту ошибку, чтобы указать, что данные о действиях на главной странице пользователя недоступны через этот API. Эта ошибка может возникнуть, если в неавторизованном запросе для параметраhomeзадано значениеtrue.invalidValue (400)invalidContentDetailsМетод playlistItems.insertвозвращает эту ошибку, чтобы указать, что объектcontentDetailsв запросе недопустим. Одна из причин этой ошибки – полеcontentDetails.noteсодержит более 280 символов.forbidden (403)watchHistoryNotAccessibleМетод playlistItems.listвозвращает эту ошибку, если запрос пытается получить элементы плейлиста "История просмотра", но это невозможно сделать с помощью API.forbidden (403)watchLaterNotAccessibleМетод playlistItems.listвозвращает эту ошибку, если в запросе была попытка получить элементы плейлиста "Смотреть позже", но их нельзя получить с помощью API.badRequest (400)uploadLimitExceededМетод videos.insertвозвращает эту ошибку, если канал превысил допустимое количество загруженных видео.forbidden (403)forbiddenEmbedSettingМетод videos.updateвозвращает эту ошибку, если в запросе к API указаны недопустимые настройки встраивания видео. Обратите внимание, что некоторые каналы не могут предлагать встроенные проигрыватели для прямых трансляций. Подробную информацию вы найдете в Справочном центре YouTube. -
Метод
playlistItems.insertбольше не возвращает ошибку, если вы добавляете в плейлист видео, которое уже в нем есть. Ранее эта ошибка возникала в некоторых плейлистах, например "Понравившиеся", в которых не допускались дубликаты, но которые больше не поддерживаются. В плейлистах могут быть повторяющиеся видео.
-
-
Другие обновления
-
В запись истории изменений от 15 сентября 2016 г. добавлено уточнение о том, что свойства
contentDetails.relatedPlaylists.watchHistoryиcontentDetails.relatedPlaylists.watchLaterресурсаchannel, если они включены в ответ, всегда содержат значенияHLиWLсоответственно. Кроме того, эти свойства включаются в ответ, только если авторизованный пользователь запрашивает данные о собственном канале.
-
15 сентября 2016 г.
В это обновление вошли следующие изменения.
-
В истории изменений от 11 августа 2016 г. описано несколько изменений, связанных с идентификаторами тем, в том числе тот факт, что набор поддерживаемых идентификаторов тем изменится с 10 февраля 2017 г. Список поддерживаемых тем будет опубликован до 10 ноября 2016 г.
-
Изменения, описанные ниже, уже вступили в силу. Уведомление об этих изменениях было опубликовано в истории изменений 11 августа 2016 г.:
-
Если метод
activities.listвызывается с параметромhome, для которого задано значениеtrue, то ответ API будет содержать элементы, похожие на те, которые видит на главной странице пользователь, не вошедший в аккаунт YouTube.Это небольшое изменение, которое сделает работу с сервисом удобнее, чем при использовании описанного в обновлении истории изменений от 11 августа 2016 г. поведения. В том сообщении говорилось, что запросы с параметром
homeбудут возвращать пустой список. -
Свойства
contentDetails.relatedPlaylists.watchHistoryиcontentDetails.relatedPlaylists.watchLaterресурсаchannelтеперь содержат значенияHLиWLсоответственно для всех каналов.Эти свойства видны только авторизованному пользователю, который получает данные о своем канале. Свойства всегда содержат значения
HLиWL, даже если авторизованный пользователь запрашивает данные о собственном канале. Таким образом, идентификаторы истории просмотра и плейлиста "Смотреть позже" нельзя получить через API.Кроме того, запросы на получение сведений о плейлистах (
playlists.list) или элементах плейлистов (playlistItems.list) для истории просмотра или плейлиста "Смотреть позже" теперь возвращают пустые списки. Это относится как к новым значениям (HLиWL), так и к идентификаторам истории просмотра и идентификаторам плейлистов "Смотреть позже", которые уже могли быть сохранены в вашем API-клиенте.
-
-
Объект
fileDetails.recordingLocationресурсаvideoи его дочерние свойства больше не возвращаются. Ранее эти данные (как и родительский объектfileDetails) мог получить только владелец видео.
11 августа 2016 г.
В это обновление вошли следующие изменения.
-
В новых Условиях использования сервисов YouTube API (далее – Обновленные условия), о которых подробно рассказывается в блоге YouTube для разработчиков, представлен широкий спектр изменений по сравнению с действующими Условиями использования. Помимо Обновленных условий, которые вступят в силу 10 февраля 2017 года, это обновление включает несколько сопроводительных документов, которые помогут объяснить правила, которым должны следовать разработчики.
Полный набор новых документов описан в истории изменений обновленных Условий. Кроме того, в истории изменений будут описаны будущие изменения в Условиях использования и сопутствующих документах. Вы можете подписаться на RSS-фид, в котором будут перечислены изменения в истории изменений, перейдя по ссылке в документе.
-
Прекращение поддержки Freebase и Freebase API приведет к ряду изменений, связанных с идентификаторами тем. Идентификаторы тем используются в следующих ресурсах и методах API:
- Раздел
topicDetailsресурсаchannelсодержит темы, связанные с каналом. - Часть
topicDetailsресурсаvideoсодержит информацию о темах, связанных с видео. - Параметр
topicIdметодаsearch.listпозволяет искать видео или каналы, связанные с определенной темой.
Вот что изменилось:
-
С 10 февраля 2017 года YouTube будет возвращать небольшой набор идентификаторов тем вместо гораздо более подробного набора идентификаторов, возвращаемых до сих пор. Набор поддерживаемых тем позволяет определять категории высокого уровня, такие как Спорт или Баскетбол, но не позволяет, например, определять конкретные команды или игроков. Мы сообщим, какие темы будут поддерживаться, чтобы у вас было время подготовить приложение к этому изменению.
-
Идентификаторы тем Freebase, которые вы уже получили, можно использовать для поиска контента до 10 февраля 2017 года. Однако после этого вы сможете использовать только меньший набор тем, указанных в предыдущем пункте, для получения результатов поиска по теме.
-
После 10 февраля 2017 г. при попытке найти результаты с помощью идентификатора темы, не входящего в сокращенный набор поддерживаемых идентификаторов, API будет возвращать пустой набор результатов.
- Раздел
-
С 12 сентября 2016 г. некоторые поля и параметры API больше не поддерживаются:
-
Параметр
homeметодаactivities.listпозволял авторизованному пользователю получать фид действий, который показывался на главной странице YouTube этого пользователя. Запросы, в которых используется этот параметр после 12 сентября 2016 г., будут возвращать пустой список. -
Свойства
contentDetails.relatedPlaylists.watchHistoryиcontentDetails.relatedPlaylists.watchLaterресурсаchannelвидны только авторизованному пользователю, который запрашивает данные о собственном канале. После 12 сентября 2016 года свойствоcontentDetails.relatedPlaylists.watchHistoryбудет возвращать значениеHL, а свойствоcontentDetails.relatedPlaylists.watchLater– значениеWLдля всех каналов.Запросы на получение сведений о плейлистах (
playlists.list) для истории просмотра или списка "Смотреть позже" после 12 сентября 2016 года будут возвращать пустой список. Запросы на получение элементов плейлиста (playlistItems.list) в любом из этих плейлистов также будут возвращать пустой список. Это касается как новых значений (HLиWL), так и идентификаторов плейлистов с историей просмотра и списком "Смотреть позже", которые уже могут храниться в вашем API-клиенте. -
Объект
fileDetails.recordingLocationресурсаvideoи все его дочерние свойства больше не будут возвращаться после 12 сентября 2016 г. Эти данные может получить только владелец видео, поскольку только ему доступен родительский объектfileDetails.
-
13 июня 2016 г.
В это обновление вошли следующие изменения.
-
Свойство
contentDetails.googlePlusUserIdресурсаchannelбольше не поддерживается. Ранее это свойство присутствовало, только если канал был связан с профилем Google+. После прекращения поддержки свойство больше не будет включаться в ресурсыchannel. -
Свойство
snippet.authorGoogleplusProfileUrlресурсаcommentбольше не поддерживается. Раньше это свойство было доступно, только если канал был связан с профилем Google+. После прекращения поддержки свойство больше не будет включаться в ресурсыcomment.
Поскольку после прекращения поддержки ни одно из этих свойств не будет возвращаться, мы удалили их из документации по соответствующему ресурсу.
31 мая 2016 г.
В это обновление вошли следующие изменения.
-
Новый параметр
myRecentSubscribersметодаsubscriptions.listпозволяет получить список подписчиков канала аутентифицированного пользователя в обратном хронологическом порядке.Обратите внимание, что новый параметр поддерживает получение только 1000 последних подписчиков канала аутентифицированного пользователя. Чтобы получить полный список подписчиков, используйте параметр
mySubscribers. Этот параметр не возвращает подписчиков в определенном порядке и не ограничивает их количество. -
Определение свойства
snippet.thumbnails.(key)было обновлено для ресурсов activity, playlistItem, playlist, результат поиска, thumbnail и video. Теперь в нем указано, что для некоторых видео доступны дополнительные размеры значков.- Размер изображения
standard– 640 x 480 пикселей. - Размер изображения
maxres– 1280 x 720 пикселей.
- Размер изображения
-
Определение параметра
partметодаchannelSection.listбыло обновлено. Теперь в нем указано, что за получение частиtargetingвзимается2единиц квоты. -
Теперь метод
videos.listвозвращает ошибку forbidden (403), когда запрос с недостаточными правами пытается получить частиfileDetails,processingDetailsилиsuggestionsресурсаvideo. Эти части доступны только владельцу видео.
17 мая 2016 г.
Новый инструмент Фрагменты кода Data API предоставляет короткие фрагменты кода для распространенных сценариев использования YouTube Data API. Фрагменты кода в настоящее время доступны для всех методов API, предназначенных только для чтения, в Apps Script, Go, JavaScript, PHP, Python и Ruby.
Для каждого метода в инструменте приведены примеры кода для одного или нескольких вариантов использования. Например, для метода search.list доступно пять фрагментов кода:
- Список видео по ключевому слову
- Как посмотреть видео по местоположению
- Как посмотреть список мероприятий
- Поиск видео аутентифицированного пользователя
- Как найти похожие видео
Для каждого варианта использования инструмент показывает параметры, используемые в запросе к API. Вы можете изменить значения параметров, и тогда инструмент обновит фрагменты кода в соответствии с указанными вами значениями.
В конце инструмент показывает ответ API на каждый запрос. Если вы изменили параметры запроса, ответ API будет основан на указанных вами значениях параметров. Обратите внимание, что вам нужно авторизовать инструмент, чтобы он мог отправлять запросы от вашего имени и показывать ответы API.
28 апреля 2016 г.
В это обновление вошли следующие изменения.
-
Новое свойство
contentDetails.projectionресурсаvideoопределяет формат проекции видео. Допустимые значения:360иrectangular. -
Свойства
recordingDetails.locationиfileDetails.recordingLocationресурсаvideoбыли обновлены, чтобы объяснить разницу между ними:- Свойство
recordingDetails.locationпозволяет указать местоположение, которое владелец видео хочет связать с ним. Это местоположение можно изменить. Оно доступно для поиска в общедоступных видео и может показываться пользователям. - Значение свойства
fileDetails.recordingLocationнеизменно и представляет собой местоположение, связанное с исходным загруженным видеофайлом. Это значение видно только владельцу видео.
- Свойство
-
В описание свойства
contentDetails.relatedPlaylists.favoritesресурсаchannelдобавлено примечание о том, что значение свойства может содержать идентификатор плейлиста, который относится к пустому плейлисту и который невозможно получить. Это связано с тем, что функция добавления видео в избранное больше не поддерживается. Обратите внимание, что на это свойство не распространяется правило прекращения поддержки API. -
Определение ошибки
ineligibleAccount, которая может быть возвращена методомcomments.insert,comments.update,commentThreads.insertилиcommentThreads.update, было обновлено. Теперь оно отражает, что ошибка возникает, когда аккаунт YouTube, используемый для авторизации запроса к API, не был объединен с аккаунтом Google пользователя.
20 апреля 2016 г.
В это обновление вошли следующие изменения.
-
В определение параметра
partметодаchannels.updateдобавлено примечание о том, чтоlocalizationsтакже является допустимым значением для этого параметра. -
В раздел Использование квоты руководства по началу работы добавлена ссылка на Google Developer Console, где можно посмотреть текущую квоту и ее использование.
16 марта 2016 г.
В это обновление вошли следующие изменения.
-
Изменения в существующих ресурсах и методах
-
В документацию по ресурсу
channelBannerдобавлено примечание о том, что рекомендуемый размер загружаемого баннера канала составляет 2560 x 1440 пикселей. Минимальный размер (2048 x 1152 пкс) не изменился. -
Новое свойство
snippet.customUrlресурсаchannelопределяет собственный URL, связанный с каналом. (Собственные URL есть не у всех каналов). О том, как создать собственный URL и какие требования нужно для этого выполнить, рассказывается в Справочном центре YouTube. -
Объект
brandingSettings.watchресурсаchannelи все его дочерние свойства больше не поддерживаются. -
Ответ API на запрос
search.listтеперь содержит свойствоregionCode. Это свойство определяет код региона, который использовался для поискового запроса. Код региона указывает API, что нужно возвращать результаты поиска для определенной страны.Значение свойства – это двухбуквенный код страны по стандарту ISO, который идентифицирует регион. Метод
i18nRegions.listвозвращает список поддерживаемых регионов. Значение по умолчанию –US. Если указан неподдерживаемый регион, YouTube может выбрать для обработки запроса другой регион, а не значение по умолчанию. -
Определения свойств
snippet.labelиsnippet.secondaryReasons[].labelресурсаvideoAbuseReportReasonбыли обновлены. Теперь в них указано, что свойства содержат локализованный текст ярлыка для причин жалоб на нарушения.Кроме того, метод
videoAbuseReportReasons.listтеперь поддерживает параметрhl, который определяет язык, используемый для текста ярлыка в ответе API. Значение параметра по умолчанию –en_US. -
Новое свойство
contentDetails.contentRating.ecbmctRatingресурсаvideoпозволяет определить рейтинг видео, присвоенный Советом по оценке и классификации Министерства культуры и туризма Турции.Кроме того, свойства API для других систем возрастных ограничений поддерживают следующие новые значения:
contentDetails.contentRating.fpbRating(ЮАР).
Возрастное ограничение: 10. Значение свойства:fpb10.contentDetails.contentRating.moctwRating(Тайвань)
Возрастное ограничение: R-12; значение свойства:moctwR12contentDetails.contentRating.moctwRating(Тайвань)
Возрастное ограничение: R-15; значение свойства:moctwR15.
-
Свойство
liveStreamingDetails.activeLiveChatIdресурсаvideoсодержит идентификатор активного чата, связанного с видео. Значение свойства указывается, только если видео является текущей прямой трансляцией с включенным чатом. После окончания трансляции и чата свойство больше не возвращается для видео. -
Свойство
status.rejectionReasonресурсаvideoтеперь поддерживает новое значениеlegal.
-
-
API поддерживает следующие новые ошибки:
Тип ошибки Сведения об ошибке Описание badRequest (400)notEditableМетоды channelSections.insert,channelSections.updateиchannelSections.deleteвозвращают эту ошибку, чтобы указать, что заданный раздел канала нельзя создать, изменить или удалить.badRequest (400)styleRequiredМетоды channelSections.insertиchannelSections.updateвозвращают эту ошибку, если в ресурсеchannelSection, который был отправлен в запросе к API, не указано значение свойстваsnippet.style.badRequest (400)typeRequiredМетоды channelSections.insertиchannelSections.updateвозвращают эту ошибку, если в ресурсеchannelSection, отправленном в запросе к API, не указано значение свойстваsnippet.type.badRequest (400)processingFailureМетод commentThreads.listвозвращает эту ошибку, если серверу API не удалось обработать запрос. Это может быть временная ошибка, но обычно она указывает на то, что входные данные запроса недействительны. Проверьте структуру ресурсаcommentThreadв теле запроса.forbidden (403)commentsDisabledМетод commentThreads.listвозвращает эту ошибку, чтобы указать, что комментарии к видео, идентифицированному параметромvideoId, отключены.badRequest (400)commentTextTooLongМетод commentThreads.insertвозвращает эту ошибку, если в свойствеsnippet.topLevelComment.snippet.textOriginalдобавляемого ресурсаcommentслишком много символов.invalidValue (400)videoAlreadyInAnotherSeriesPlaylistМетод playlistItems.insertвозвращает эту ошибку, если видео, которое вы пытаетесь добавить в плейлист, уже входит в другой плейлист серий. Подробнее о плейлистах серий в Справочном центре YouTube.badRequest (400)subscriptionForbiddenМетод subscriptions.insertвозвращает эту ошибку, если вы достигли максимального количества подписок или создали слишком много подписок за последнее время. В последнем случае повторите запрос через несколько часов.badRequest (400)invalidCategoryIdМетод videos.updateвозвращает эту ошибку, если в свойствеsnippet.categoryIdзагруженного ресурсаvideoуказан недопустимый идентификатор категории. Чтобы получить список поддерживаемых категорий, используйте методvideoCategories.list.badRequest (400)invalidDescriptionМетод videos.updateвозвращает эту ошибку, если свойствоsnippet.descriptionв загруженном ресурсеvideoсодержит недопустимое значение.badRequest (400)invalidPublishAtМетод videos.updateвозвращает эту ошибку, если в свойствеstatus.publishAtзагруженного ресурсаvideoуказано недопустимое время публикации.badRequest (400)invalidRecordingDetailsМетод videos.updateвозвращает эту ошибку, если объектrecordingDetailsв загруженном ресурсеvideoсодержит недопустимые сведения о записи.badRequest (400)invalidTagsМетод videos.updateвозвращает эту ошибку, чтобы указать, что свойствоsnippet.tagsв загруженном ресурсеvideoсодержит недопустимое значение.badRequest (400)invalidTitleМетод videos.updateвозвращает эту ошибку, если свойствоsnippet.titleв загруженном ресурсеvideoсодержит недопустимое или пустое название видео.badRequest (400)invalidVideoMetadataМетод videos.updateвозвращает эту ошибку, если метаданные запроса недействительны. Эта ошибка возникает, если запрос обновляет частьsnippetресурсаvideo, но не задает значения для свойствsnippet.titleиsnippet.categoryId.
18 декабря 2015 г.
Законы Европейского союза (ЕС) требуют, чтобы конечным пользователям из ЕС предоставлялась определенная информация и от них было получено согласие. Поэтому при работе с конечными пользователями из Европейского союза необходимо соблюдать правила в отношении согласия пользователей из ЕС. Мы добавили уведомление об этом требовании в Условия использования YouTube API.
19 ноября 2015 г.
Теперь API поддерживает возможность задавать и получать локализованный текст для свойств snippet.title и snippet.description ресурсов playlist и video, свойства snippet.title ресурса channelSection и свойства snippet.description ресурса channel.
-
Как задать локализованные названия и описания
Вы можете задать локализованные значения для ресурса, вызвав метод
insertилиupdateдля этого ресурса. Чтобы задать локализованные значения для ресурса, выполните следующие действия:-
Убедитесь, что для свойства
snippet.defaultLanguageресурса задано значение. Это свойство определяет язык свойствsnippet.titleиsnippet.descriptionресурса. Его значением может быть любой поддерживаемый язык приложения или большинство других языковых кодов ISO 639-1:2002. Например, если вы загружаете видео с названием и описанием на английском языке, то для свойстваsnippet.defaultLanguageнужно указать значениеen.Примечание об обновлении ресурсов
channel. Чтобы задать свойствоsnippet.defaultLanguageдля ресурсаchannel, нужно обновить свойствоbrandingSettings.channel.defaultLanguage. -
Добавьте объект
localizationsв ресурс, который вы обновляете. Каждый ключ объекта – это строка, которая идентифицирует язык приложения или код языка ISO 639-1:2002. Каждый ключ сопоставляется с объектом, который содержит локализованное название (и описание) ресурса.В приведенном ниже фрагменте кода в качестве языка по умолчанию задан английский. Также он добавляет к видео локализованные названия и описания на немецком и испанском языках:
{ "kind": "youtube#video", ... "snippet": { "title": "Playing soccer", "description": "We play soccer in the park on Sundays.", "defaultLanguage": "en", ... }, "localizations": "de": { "title": "Fußball spielen", "description": "Wir spielen Fußball im Park am Sonntag" }, "es": { "title": "Jugar al fútbol", "description": "Nosotros jugamos fútbol en el parque los domingos", } } }
Важно! При обновлении локализованных данных для ресурса в запросе API должны быть указаны все существующие локализованные версии данных. Например, если вы отправите запрос на добавление данных на португальском языке к видео из примера выше, запрос должен содержать локализованные данные на немецком, испанском и португальском языках.
-
-
Как получить локализованные значения
API поддерживает два способа получения локализованных значений для ресурса:
-
Добавьте параметр
hlв запросchannels.list,channelSections.list,playlists.listилиvideos.list, чтобы получить локализованные данные для определенного языка приложения, поддерживаемого сайтом YouTube. Если для этого языка доступны локализованные сведения о ресурсе, объектsnippet.localizedресурса будет содержать локализованные значения. Если локализованные данные недоступны, объектsnippet.localizedбудет содержать сведения о ресурсе на языке по умолчанию.Например, предположим, что запрос
videos.listизвлек данные для видео, описанного выше, с локализованными данными на немецком и испанском языках. Если для параметраhlзадано значениеde, ресурс будет содержать следующие данные:{ "kind": "youtube#video", ... "snippet": { "title": "Playing soccer", "description": "We play soccer in the park on Sundays.", "defaultLanguage": "en", "localized": { "title": "Fußball spielen", "description": "Wir spielen Fußball im Park am Sonntag" } ... } }Однако если бы параметр
hlбыл задан какfr, объектsnippet.localizedсодержал бы название и описание на английском языке, поскольку английский – язык ресурса по умолчанию, а локализованные сведения на французском недоступны.Важно! Параметрhlподдерживает только значения, которые идентифицируют языки приложения, поддерживаемые сайтом YouTube. Чтобы узнать, доступен ли локализованный текст на других языках, необходимо получить частьlocalizationsдля ресурса и отфильтровать ее.
Например, чтобы узнать, доступен ли локализованный текст на аппалачском диалекте английского языка, необходимо получить полный список локализаций.
-
Чтобы получить все локализованные сведения об объекте, при его извлечении добавьте
localizationsв значение параметраpart. Если вы получаете локализованные данные для языка, который не является текущим языком приложения YouTube, вам нужно использовать этот подход, чтобы получить все локализации, а затем отфильтровать их, чтобы определить, существуют ли нужные локализованные данные.
-
-
Ошибки, связанные со значениями локализованного текста
API также поддерживает следующие новые ошибки для локализованных текстовых значений:
Тип ошибки Сведения об ошибке Описание badRequest (400)defaultLanguageNotSetErrorЭта ошибка означает, что запрос, который пытается вставить или обновить объект localizationsдля ресурса, не выполняется, поскольку для этого ресурса не задано свойствоsnippet.defaultLanguage. Эта ошибка поддерживается методамиchannels.update,channelSections.insert,channelSections.update,playlists.insert,playlists.update,videos.insertиvideos.update.badRequest (400)localizationValidationErrorЭта ошибка означает, что одно из значений в объекте localizationsресурса не прошло проверку. Например, эта ошибка может возникнуть, если объект содержит недопустимый код языка. Этот тип ошибки поддерживается методамиchannels.update,channelSections.insert,channelSections.update,playlists.insertиplaylists.update.
4 ноября 2015 г.
В это обновление вошли следующие изменения.
-
Обновления существующих ресурсов и методов
-
В описание параметра
orderметодаsearch.listдобавлено примечание о том, что если вы сортируете прямые трансляции по значениюviewCount, то результаты сортируются по количеству одновременных просмотров, пока трансляции продолжаются. -
Параметр
relatedToVideoIdметодаsearch.listбыл обновлен. Теперь в нем указано, что если параметр задан, то единственными поддерживаемыми параметрами являютсяpart,maxResults,pageToken,regionCode,relevanceLanguage,safeSearch,type(которое должно быть установлено на значениеvideo) иfields. Это изменение не влияет на работу API. -
В определение свойства
snippet.publishedAtресурсаvideoдобавлено примечание о том, что значение свойства, указывающее дату и время публикации видео, может отличаться от времени загрузки видео. Например, если видео было загружено как личное, а затем стало общедоступным, в свойстве будет указано время, когда видео стало общедоступным. В обновленном определении также объясняется, как заполняется значение для видео с ограниченным доступом и доступом по ссылке.Это изменение не отражает изменения в работе API.
-
В определение свойства
status.publishAtресурсаvideoдобавлено следующее примечание:- Если вы зададите значение этого свойства при вызове метода
videos.update, то также должны задать для свойстваstatus.privacyStatusзначениеprivate, даже если видео уже является частным. - Если в запросе указано время публикации в прошлом, видео публикуется сразу. Таким образом, если вы укажете в свойстве
status.publishAtдату и время в прошлом, то это будет равносильно изменению значения свойстваprivacyStatusсprivateнаpublic.
- Если вы зададите значение этого свойства при вызове метода
-
Свойство
contentDetails.contentRating.cncRatingресурсаvideoопределяет возрастной рейтинг видео по классификации французской организации Commission de classification cinematographique. Это свойство заменяет свойствоcontentDetails.contentRating.fmocRating, которое больше не поддерживается. -
Определение свойства
brandingSettings.channel.keywordsресурсаchannelбыло обновлено, чтобы правильно отразить, что значение свойства содержит список строк, разделенных пробелами, а не запятыми, как было задокументировано ранее. Это изменение не влияет на работу API. -
Документация по методу
thumbnails.setбыла обновлена, чтобы точно отразить, что тело запроса содержит изображение значка, которое вы загружаете и связываете с видео. Тело запроса не содержит ресурсthumbnail. Ранее в документации говорилось, что при вызове этого метода не нужно указывать тело запроса. Это изменение не влияет на работу API. -
Описание ресурса
activityбыло обновлено, чтобы отразить тот факт, что методactivities.listв настоящее время не включает ресурсы, связанные с новыми комментариями к видео. Поляsnippet.typeиcontentDetails.commentресурса также были обновлены.
-
-
Новые и обновленные ошибки
-
Теперь API поддерживает следующие ошибки:
Сведения об ошибке activities.insertКод HTTP-ответа badRequest (400)Причина invalidMetadataОписание Ресурс kindне соответствует типу указанного идентификатора.commentThreads.updatecomments.insertcomments.updateКод HTTP-ответа badRequest (400)Причина commentTextTooLongОписание Ресурс comment, который вы пытаетесь вставить или обновить, содержит слишком много символов в свойствеsnippet.topLevelComment.snippet.textOriginal.playlistItems.insertplaylistItems.updateКод HTTP-ответа forbidden (403)Причина playlistItemsNotAccessibleОписание Запрос не авторизован для вставки, обновления или удаления указанного элемента плейлиста. playlists.deleteplaylists.insertplaylists.updateКод HTTP-ответа badRequest (400)Причина playlistForbiddenОписание Эта операция запрещена или запрос не авторизован. search.listКод HTTP-ответа badRequest (400)Причина invalidLocationОписание Значение параметра locationи/илиlocationRadiusотформатировано неправильно.search.listКод HTTP-ответа badRequest (400)Причина invalidRelevanceLanguageОписание Значение параметра relevanceLanguageимеет неправильный формат.subscriptions.insertКод HTTP-ответа badRequest (400)Причина subscriptionForbiddenОписание Эта ошибка возникает, если: - Подписка, которую вы пытаетесь создать, уже существует.
- Вы уже оформили максимальное количество подписок.
- Вы пытаетесь подписаться на свой канал, что не поддерживается.
- Вы создали слишком много подписок за последнее время. Повторите попытку через несколько часов.
videos.updateКод HTTP-ответа badRequest (400)Причина invalidDefaultBroadcastPrivacySettingОписание В запросе указаны недопустимые настройки конфиденциальности для трансляции по умолчанию.
-
28 августа 2015 г.
В это обновление вошли следующие изменения.
-
Обновления существующих ресурсов и методов
-
Свойство
statistics.favoriteCountресурсаvideoбольше не поддерживается.В соответствии с нашими правилами прекращения поддержки это свойство будет включаться в ресурсы
videoв течение как минимум одного года после этого объявления. Однако теперь значение свойства всегда равно0.
-
7 августа 2015 г.
В это обновление вошли следующие изменения.
-
Обновления существующих ресурсов и методов
-
Определение свойства
snippet.tags[]ресурсаvideoбыло обновлено, чтобы предоставить больше информации о том, как сервер API рассчитывает длину значения свойства. Обратите внимание, что это обновление не отражает изменения в поведении API.В частности, теперь в определении объясняется, что если тег содержит пробел, сервер API обрабатывает значение тега так, как если бы оно было заключено в кавычки, и кавычки учитываются в ограничении на количество символов. Таким образом, тег Foo-Baz содержит семь символов, а тег Foo Baz – девять.
-
Метод
commentThreads.insertбольше не поддерживает параметрshareOnGooglePlus, который ранее указывал, нужно ли публиковать комментарий и ответы на него в профиле Google+ автора. Если в запросе указан этот параметр, сервер API игнорирует его, но обрабатывает запрос.
-
18 июня 2015 г.
В это обновление вошли следующие изменения.
-
Изменения в существующих ресурсах и методах
-
Новый параметр
orderметодаcommentThreads.listопределяет порядок, в котором в ответе API должны быть перечислены цепочки комментариев. Цепочки можно отсортировать по времени или релевантности. По умолчанию они упорядочены по времени. -
Новое свойство
snippet.defaultAudioLanguageресурсаvideoуказывает язык, на котором записана звуковая дорожка видео по умолчанию. -
Определение свойства
contentDetails.licensedContentресурсаvideoбыло изменено. Теперь в нем указано, что контент должен быть изначально загружен на канал, связанный с партнером YouTube по контенту, и права на него должны быть заявлены этим партнером. Это не означает, что фактическое поведение API изменилось. -
Методы
captions.delete,captions.download,captions.insert,captions.listиcaptions.updateтеперь поддерживают параметрonBehalfOfContentOwner, который уже поддерживается для нескольких других методов. Запросы, в которых используется этот метод, также должны быть авторизованы с помощью токена, предоставляющего доступ к области действияhttps://www.googleapis.com/auth/youtubepartner.
-
-
Новые и измененные ошибки
-
Теперь API поддерживает следующие ошибки:
Сведения об ошибке videos.rateКод HTTP-ответа badRequest (400)Причина emailNotVerifiedОписание Чтобы оценить видео, пользователь должен подтвердить свой адрес электронной почты. videos.rateКод HTTP-ответа badRequest (400)Причина videoPurchaseRequiredОписание Оценивать видео, взятые напрокат, могут только те, кто их арендовал. -
Методы
subscriptions.deleteиsubscriptions.insertбольше не поддерживают ошибкиaccountClosedиaccountSuspended.
-
27 апреля 2015 г.
В это обновление вошли следующие изменения.
-
Новые ресурсы и методы
-
Новый ресурс
videoAbuseReportReasonсодержит информацию о причине, по которой видео может быть помечено как содержащее недопустимый контент. МетодvideoAbuseReportReasons.listпозволяет получить список всех причин, по которым на видео может быть подана жалоба. -
Новый метод
videos.reportAbuseпозволяет отмечать видео, содержащие недопустимый контент. В теле запроса содержится объект JSON, в котором указано видео, помеченное как содержащее недопустимый контент, а также причина, по которой оно было помечено. Допустимые причины можно получить с помощью методаvideoAbuseReportReason.list, описанного выше.В руководство по переносу также добавлен пример того, как пожаловаться на видео, нарушающее правила. Теперь API версии 3 поддерживает все функции API версии 2, которые планировалось в него добавить. Все эти функции также описаны в руководстве по переносу.
-
-
Обновления существующих ресурсов и методов
-
Новый параметр фильтра
forDeveloperметодаsearch.listограничивает поиск, чтобы получать только видео, загруженные через приложение или сайт разработчика. ПараметрforDeveloperможно использовать вместе с необязательными параметрами поиска, напримерq.Для этой функции каждому загруженному видео автоматически присваивается номер проекта, связанный с приложением разработчика в Google Developers Console.
Когда в поисковом запросе параметру
forDeveloperприсваивается значениеtrue, сервер API использует учетные данные авторизации запроса для идентификации разработчика. Таким образом, разработчик может ограничить результаты видео, загруженными через его собственное приложение или сайт, но не видео, загруженными через другие приложения или сайты.Новая функция предлагает возможности, аналогичные, хотя и не идентичные, функции тегов разработчика, которую поддерживал API версии 2.
-
Новое свойство
snippet.countryресурсаchannelпозволяет владельцам каналов указывать, с какой страной они связаны.Примечание. Чтобы задать свойство
snippet.countryдля ресурсаchannel, нужно обновить свойствоbrandingSettings.channel.country. -
Теперь API поддерживает таргетинг для ресурсов
channelSection. Таргетинг на разделы канала позволяет ограничить видимость раздела контента для пользователей, соответствующих определенным критериям.API предлагает три варианта таргетинга. Чтобы раздел канала был виден, пользователь должен соответствовать всем настройкам таргетинга.
-
targeting.languages[]– список языков приложения YouTube. Пользователи, выбравшие один из этих языков, увидят соответствующий раздел канала. -
targeting.regions[]– список предпочтительных регионов YouTube. Раздел канала виден пользователям, которые выбрали один из этих регионов, а также пользователям, для которых один из этих регионов выбран автоматически. -
targeting.countries[]– список стран, в которых виден раздел канала. Каждое значение в списке – это код страны в формате ISO 3166-1 alpha-2.
-
-
Определение свойства
contentDetails.durationресурсаvideoисправлено, чтобы отразить, что значение может быть указано в часах, днях и т. д. -
В документацию по методам
channelSections.delete,playlistItems.delete,playlists.delete,subscriptions.deleteиvideos.deleteвнесены исправления. Теперь в ней указано, что в случае успешного выполнения эти методы возвращают код ответа HTTP204(No Content).
-
-
Новые и измененные ошибки
-
Теперь API поддерживает следующие ошибки:
Тип ошибки Сведения об ошибке Описание badRequest (400)targetInvalidCountryМетоды channelSections.insertиchannelSections.updateвозвращают эту ошибку, если добавленный ресурсchannelSectionсодержит недопустимое значение свойстваtargeting.countries[].badRequest (400)targetInvalidLanguageМетоды channelSections.insertиchannelSections.updateвозвращают эту ошибку, если добавленный ресурсchannelSectionсодержит недопустимое значение свойстваtargeting.languages[].badRequest (400)targetInvalidRegionМетоды channelSections.insertиchannelSections.updateвозвращают эту ошибку, если добавленный ресурсchannelSectionсодержит недопустимое значение свойстваtargeting.regions[].badRequest (400)operationNotSupportedМетод comments.insertвозвращает эту ошибку, если пользователь API не может вставить комментарий в ответ на комментарий верхнего уровня, указанный в свойствеsnippet.parentId. В ресурсеcommentThreadсвойствоsnippet.canReplyуказывает, может ли текущий зритель ответить на сообщение.badRequest (400)invalidChannelIdМетод search.listвозвращает эту ошибку, если в параметреchannelIdзапроса указан недействительный идентификатор канала.badRequest (400)subscriptionForbiddenМетод subscriptions.insertвозвращает эту ошибку, если пользователь API пытается подписаться на собственный канал. -
Метод
captions.updateбольше не поддерживает ошибкиinvalidMetadataиvideoNotFound.
-
16 апреля 2015 г.
В это обновление вошли следующие изменения.
-
В руководство по переходу добавлена информация о том, как перенести приложения, в которых ещё используются функции комментариев из API версии 2.
В руководстве также перечислены функции комментирования, которые не поддерживались в API версии 2, но поддерживаются в API версии 3. Вот некоторые из них:
- Как получить комментарии о канале
- Получение всех цепочек комментариев, связанных с каналом. Это означает, что ответ API может содержать комментарии о канале или любом из его видео.
- Обновление текста комментария
- Как пометить комментарий как спам
- Как задать статус модерации комментария
-
В руководстве Как подписаться на push-уведомления теперь указано, что уведомления отправляются только в центр Google PubSubHubBub, а не в центр Superfeedr, как было указано ранее.
9 апреля 2015 г.
В это обновление вошли следующие изменения.
-
Новые ресурсы
commentThreadиcommentпозволяют получать, добавлять, обновлять, удалять и модерировать комментарии.-
Ресурс
commentThreadсодержит информацию о цепочке комментариев на YouTube, которая состоит из комментария верхнего уровня и ответов на него (если они есть). РесурсcommentThreadможет представлять комментарии к видео или каналу.Комментарий верхнего уровня и ответы на него – это ресурсы
comment, вложенные в ресурсcommentThread. Важно отметить, что ресурсcommentThreadне обязательно содержит все ответы на комментарий. Чтобы получить все ответы на определенный комментарий, используйте методcomments.list. Кроме того, на некоторые комментарии нет ответов.API поддерживает следующие методы для ресурсов
commentThread:commentThreads.list– получить список цепочек комментариев. Этот метод позволяет получать комментарии, связанные с определенным видео или каналом.commentThreads.insert– создать новый комментарий верхнего уровня. Чтобы ответить на существующий комментарий, используйте методcomments.insert.commentThreads.update– изменить комментарий верхнего уровня.
-
Ресурс
commentсодержит информацию об одном комментарии на YouTube. Ресурсcommentможет представлять комментарий к видео или каналу. Кроме того, комментарий может быть как основным, так и ответом на основной комментарий.API поддерживает следующие методы для ресурсов
comment:comments.list– получить список комментариев. Этот метод позволяет получить все ответы на определенный комментарий.comments.insert– создать ответ на существующий комментарий.comments.update– изменить комментарий.comments.markAsSpam– пометить один или несколько комментариев как спам.comments.setModerationStatus– задать статус модерации для одного или нескольких комментариев. Например, вы можете одобрить комментарий, чтобы он был виден всем, или отклонить его, если он не соответствует правилам. Запрос к API должен быть авторизован владельцем канала или видео, с которыми связаны комментарии.comments.delete– удалить комментарий.
Обратите внимание, что для вызовов методов
comments.insert,comments.update,comments.markAsSpam,comments.setModerationStatus,comments.delete,commentThreads.insertиcommentThreads.updateтребуется новая область действия APIhttps://www.googleapis.com/auth/youtube.force-ssl, описанная в истории изменений от 2 апреля 2015 г.. -
-
В новом руководстве Подписка на push-уведомления рассказывается о том, как API поддерживает push-уведомления с помощью PubSubHubBub – протокола публикации и подписки для ресурсов, доступных через интернет. Ваш сервер обратного вызова PubSubHubBub может получать уведомления о фиде Atom, когда на канале выполняются следующие действия:
- загружает видео;
- обновляет название видео;
- изменяет описание видео;
-
В руководство по переносу также добавлена информация о поддержке push-уведомлений. Однако поскольку API версии 2 поддерживал множество других типов push-уведомлений, которые не поддерживаются в API версии 3, упоминание о поддержке PubSubHubBub по-прежнему находится в разделе Устаревшие функции этого руководства.
-
Новая область действия
https://www.googleapis.com/auth/youtube.force-sslAPI теперь действительна для любого метода API, который ранее поддерживал область действияhttps://www.googleapis.com/auth/youtube. -
Теперь API поддерживает следующие ошибки:
Тип ошибки Сведения об ошибке Описание badRequest (400)invalidRatingМетод videos.rateвозвращает эту ошибку, если запрос содержит недопустимое значение параметраrating. -
Метод
subscriptions.insertбольше не поддерживает ошибкуsubscriptionLimitExceeded, которая ранее указывала на то, что подписчик, идентифицированный с помощью запроса, превысил лимит ограничения частоты запросов.
2 апреля 2015 г.
В это обновление вошли следующие изменения.
-
Новый ресурс
captionsпредставляет собой дорожку субтитров YouTube. Одна дорожка субтитров связана только с одним видео на YouTube.API поддерживает методы для получения списка, добавления, обновления, скачивания и удаления дорожек субтитров.
-
Мы также обновили руководство по переходу, чтобы объяснить, как перенести приложения, в которых до сих пор используются функции субтитров в API версии 2.
-
Новая область действия
https://www.googleapis.com/auth/youtube.force-sslAPI требует, чтобы связь с сервером API осуществлялась через SSL-подключение.Новая область действия предоставляет тот же доступ, что и область действия
https://www.googleapis.com/auth/youtube. Фактически эти области действия идентичны, поскольку сервер API YouTube доступен только через конечную точку HTTPS. В результате, хотя область действияhttps://www.googleapis.com/auth/youtubeне требует SSL-подключения, на самом деле нет другого способа сделать запрос к API.Новая область действия необходима для вызовов всех методов ресурса
caption.
11 марта 2015 г.
В это обновление вошли следующие изменения.
-
В руководстве по переходу на YouTube Data API v3 появилась вкладка Новые функции в API v3. На ней перечислены функции, которые поддерживаются в API v3, но не поддерживались в API v2. Те же функции ранее были и сейчас перечислены на других вкладках в руководстве. Например, новая функция, объясняющая, как обновить данные о рекламной кампании видео на видеосайтах канала, также указана на вкладке Каналы (профили).
-
В руководство по переходу на YouTube Data API v3 добавлена информация о том, что в версии 3 будет поддерживаться следующая функция версии 2:
-
В руководство по переходу на YouTube Data API v3 добавлено примечание о том, что следующие функции API v2 не будут поддерживаться в API v3:
-
Получение рекомендаций видео. API версии 3 не позволяет получить список, в котором будут только видео, рекомендованные для текущего пользователя API. Однако вы можете использовать API версии 3, чтобы находить рекомендованные видео. Для этого вызовите метод
activities.listи задайте для параметраhomeзначениеtrue.В ответе API ресурс соответствует рекомендованному видео, если свойство
snippet.typeимеет значениеrecommendation. В этом случае свойстваcontentDetails.recommendation.reasonиcontentDetails.recommendation.seedResourceIdбудут содержать информацию о том, почему видео было рекомендовано. Обратите внимание, что в ответе может быть любое количество рекомендованных видео. -
Получение новых видео с каналов, на которые подписан пользователь. API версии 3 не позволяет получить список, содержащий только видео, которые были недавно загружены на каналы, на которые подписан пользователь API. Однако вы можете использовать API версии 3, чтобы находить новые видео на каналах, на которые подписан пользователь. Для этого вызовите метод
activities.listи задайте параметруhomeзначениеtrue.В ответе API ресурс соответствует новому видео, если значение свойства
snippet.typeравноupload. Обратите внимание, что в ответе не гарантируется определенное количество новых видео. -
Push-уведомления об обновлении фидов. API версии 2 поддерживал push-уведомления, которые отправлялись с помощью протокола Simple Update Protocol (SUP) или PubSubHubbub и позволяли отслеживать фиды действий пользователей YouTube. Уведомления приходили, когда пользователи подписывались на каналы, оценивали видео, делились ими, добавляли их в избранное, комментировали или загружали.
В API версии 3 будут поддерживаться push-уведомления на основе протокола PubSubHubbub, но только о загрузке видео и изменении их названий и описаний.
-
Местоположение канала. В API версии 2 для определения местоположения пользователя, указанного в общедоступном профиле канала YouTube, использовался тег
<yt:location>. Некоторые разработчики использовали это поле, чтобы связать канал с определенной страной, но данные в нем не всегда можно было использовать для этой цели. -
Настройка и получение тегов разработчика. В API версии 2 можно было связывать ключевые слова или теги разработчика с видео во время его загрузки. Теги разработчика не показывались пользователям YouTube, но владельцы видео могли находить видео, соответствующие определенному тегу разработчика.
В API версии 3 будет реализована похожая, но не идентичная функция. В частности, разработчик сможет искать видео, загруженные его собственным приложением. Каждому загруженному видео автоматически присваивается тег с номером проекта, связанного с приложением разработчика в Google Developers Console. Затем разработчик использует тот же номер проекта для поиска видео.
-
Сортировка видео по дате публикации, количеству просмотров или рейтингу. В API версии 2 параметр
orderbyпозволял сортировать видео в плейлисте по позиции, продолжительности, дате публикации, названию и другим значениям. В API версии 3 объекты плейлиста обычно сортируются по позиции в порядке возрастания, а другие варианты сортировки недоступны.Есть несколько исключений. Новое загруженное, избранное, понравившееся или недавно просмотренное видео автоматически добавляется в качестве первого элемента (
snippet.position=0) для следующих типов плейлистов. Таким образом, каждый из этих списков фактически отсортирован в порядке от самого нового к самому старому элементу на основе времени добавления элементов в список.- загруженные пользователями видео
- любимые видео
- понравившиеся видео
- история просмотров
Однако обратите внимание, что новые видео добавляются в конец плейлиста "Смотреть позже", поэтому он фактически отсортирован от старых к новым.
-
Пакетная обработка. API версии 3 поддерживает один из вариантов пакетной обработки, который поддерживался в API версии 2. Методы
channels.list,channelSections.list,guideCategories.list,playlistItems.list,playlists.list,subscriptions.list,videoCategories.listиvideos.listв API версии 3 поддерживают параметрid, который позволяет указать список идентификаторов (идентификаторов видео, идентификаторов каналов и т. д.), разделенных запятыми. С помощью этих методов можно получить список нескольких ресурсов, отправив один запрос.
В руководстве теперь указаны все функции, которые поддерживались в старой версии API (v2) и не будут поддерживаться в текущей (v3).
-
4 марта 2015 г.
В это обновление вошли следующие изменения.
-
Методы
channelSections.deleteиchannelSections.updateтеперь поддерживают параметрonBehalfOfContentOwner, который уже поддерживается для нескольких других методов. -
Поддержка следующих свойств и их дочерних свойств прекращена:
brandingSettings.image.backgroundImageUrlbrandingSettings.image.largeBrandedBannerImageImapScriptbrandingSettings.image.largeBrandedBannerImageUrlbrandingSettings.image.smallBrandedBannerImageImapScriptbrandingSettings.image.smallBrandedBannerImageUrl
Примечание. Ни одно из этих свойств не подпадало под действие правил прекращения поддержки API.
-
Новое свойство
contentDetails.contentRating.contentDetails.contentRating.djctqRatingReasonsресурсаvideoпозволяет указать причины, по которым видео получило возрастное ограничение DJCQT (Бразилия). -
Теперь API поддерживает следующие ошибки:
Тип ошибки Сведения об ошибке Описание notFound (404)channelNotFoundМетод channels.updateвозвращает эту ошибку, если в параметреidзапроса указан канал, который не удается найти.badRequest (400)manualSortRequiredinvalidValueМетоды playlistItems.insertиplaylistItems.updateвозвращают эту ошибку, если в запросе предпринимается попытка задать позицию видео в плейлисте, но для плейлиста не используется сортировка вручную. Например, элементы плейлиста могут быть отсортированы по дате или популярности. Чтобы устранить эту ошибку, удалите элементsnippet.positionиз ресурса, отправленного в теле запроса. Если вы хотите, чтобы элемент плейлиста занимал определенную позицию в списке, сначала необходимо изменить настройку упорядочивания плейлиста на Вручную. Этот параметр можно изменить в Менеджере видео YouTube.forbidden (403)channelClosedМетод playlists.listвозвращает эту ошибку, если в параметреchannelIdзапроса указан закрытый канал.forbidden (403)channelSuspendedМетод playlists.listвозвращает эту ошибку, если в параметреchannelIdзапроса указан заблокированный канал.forbidden (403)playlistForbiddenМетод playlists.listвозвращает эту ошибку, если параметрidв запросе не поддерживает запрос или запрос не авторизован должным образом.notFound (404)channelNotFoundМетод playlists.listвозвращает эту ошибку, если в параметреchannelIdзапроса указан канал, который не удается найти.notFound (404)playlistNotFoundМетод playlists.listвозвращает эту ошибку, если в параметреidзапроса указан плейлист, который не удается найти.notFound (404)videoNotFoundМетод videos.listвозвращает эту ошибку, если в параметреidзапроса указано видео, которое не удалось найти.badRequest (400)invalidRatingМетод videos.rateвозвращает эту ошибку, если запрос содержит недопустимое значение параметраrating.
2 марта 2015 г.
В это обновление вошли следующие изменения.
-
Метод
search.listтеперь поддерживает параметрrelevanceLanguage, который позволяет запрашивать результаты, наиболее релевантные для определенного языка.В руководство по переходу на YouTube Data API (v3) также добавлена информация о том, как использовать этот новый параметр. Этот параметр устраняет разрыв в функциональности между текущей версией API (v3) и предыдущей (v2), которая уже не поддерживается.
-
В руководство по переходу на YouTube Data API (v3) также добавлена информация о прекращении поддержки специальных фидов и полей метаданных, которые использовались в API версии 2 для описания фильмов, трейлеров, телешоу, сезонов и серий.
14 января 2015 г.
В это обновление вошли следующие изменения.
-
В руководство по переходу на YouTube Data API v3 добавлена информация о том, как загружать видео с помощью JavaScript. Подробнее о том, как загрузить видео… Эта функция аналогична загрузке через браузер, которая поддерживается в API версии 2. Обратите внимание, что это изменение в руководстве по переносу не отражает фактическое изменение API, а скорее доступность нового образца кода для загрузки видео с помощью клиентского JavaScript.
Поскольку загрузка видео с помощью клиентской библиотеки JavaScript и CORS поддерживается, в руководстве по переносу данных загрузка через браузер больше не указана как функция, которая может быть прекращена в API версии 3.
-
В документацию по методу
videos.insertдобавлен новый пример кода JavaScript, описанный выше. Также был обновлен список примеров кода JavaScript для YouTube Data API (v3).
11 ноября 2014 г.
В это обновление вошли следующие изменения.
-
Стоимость квоты для вызова метода
search.listизменилась и теперь составляет 100 единиц.Важно! Во многих случаях для получения информации можно использовать другие методы API, которые требуют меньше квот. Например, вот два способа найти видео, загруженные на канал GoogleDevelopers.
-
Стоимость квоты: 100 единиц.
Вызовите метод
search.listи найдитеGoogleDevelopers. -
Стоимость квоты: 6 единиц
Вызовите метод
channels.list, чтобы найти нужный идентификатор канала. Задайте для параметраforUsernameзначениеGoogleDevelopers, а для параметраpart–contentDetails. В ответе API свойствоcontentDetails.relatedPlaylists.uploadsуказывает идентификатор плейлиста с загруженными на канал видео.Затем вызовите метод
playlistItems.listи задайте для параметраplaylistIdзахваченный идентификатор, а для параметраpart– значениеsnippet.
-
8 октября 2014 г.
В это обновление вошли следующие изменения.
-
Ресурс
channelсодержит два новых свойства:-
Свойство
status.longUploadsStatusуказывает, может ли канал загружать видео продолжительностью более 15 минут. Это свойство возвращается, только если владелец канала авторизовал запрос к API. Допустимые значения свойства:allowed– на канал можно загружать видео продолжительностью более 15 минут.eligible– на канал можно загружать видео продолжительностью более 15 минут, но сначала нужно включить эту функцию.disallowed– на канале нельзя загружать видео продолжительностью более 15 минут.
Подробнее об этих значениях можно узнать в определении свойства. Дополнительную информацию об этой функции можно найти в Справочном центре YouTube.
-
Свойство
invideoPromotion.useSmartTimingуказывает, используется ли в промокампании канала функция "Умное время". Эта функция позволяет показывать рекламу в тот момент, когда зрители с большей вероятностью нажмут на нее и когда она меньше всего мешает просмотру. Для каждого видео выбирается одно промо.
-
-
Определения свойств
snippet.titleиsnippet.categoryIdресурсаvideoбыли обновлены, чтобы уточнить, как API обрабатывает вызовы методаvideos.update. Если вы вызываете этот метод, чтобы обновить частьsnippetресурсаvideo, необходимо задать значения для обоих этих свойств.Если вы попытаетесь обновить часть
snippetресурсаvideoи не зададите значения для обоих этих свойств, API вернет ошибкуinvalidRequest. Описание этой ошибки также было обновлено. -
Свойство
contentDetails.contentRating.oflcRatingресурсаvideo, которое определяет возрастной рейтинг видео, присвоенный Новозеландским бюро классификации фильмов и литературы, теперь поддерживает два новых рейтинга:oflcRp13иoflcRp16. Они соответствуют рейтингамRP13иRP16. -
Метод
channelBanners.insertтеперь поддерживает следующую ошибку:Тип ошибки Сведения об ошибке Описание badRequestbannerAlbumFullВ альбоме "Фоновые изображения канала YouTube" слишком много изображений. Владельцу канала нужно перейти на сайт http://photos.google.com, открыть страницу альбомов и удалить некоторые изображения из альбома.
12 сентября 2014 г.
В это обновление вошли следующие изменения.
-
Стоимость квоты для вызова метода
search.listизменилась с 1 до 2 единиц в дополнение к стоимости указанных частей ресурса.
13 августа 2014 г.
В это обновление вошли следующие изменения.
-
Метод
subscriptions.insertтеперь поддерживает следующую ошибку:Тип ошибки Сведения об ошибке Описание badRequestsubscriptionLimitExceededПодписчик, указанный в запросе, превысил ограничение частоты запросов подписки. Повторите попытку через несколько часов.
12 августа 2014 г.
В это обновление вошли следующие изменения.
-
В новом руководстве Migrating Your Application to YouTube Data API (v3) (Перенос приложения на YouTube Data API версии 3) объясняется, как использовать YouTube Data API версии 3 для выполнения функций, доступных в YouTube Data API версии 2. Поддержка старого API была официально прекращена 4 марта 2014 г. Это руководство поможет вам перенести приложения, которые по-прежнему используют API версии 2, на последнюю версию API.
8 июля 2014 г.
В это обновление вошли следующие изменения.
-
Метод
playlists.insertтеперь поддерживает следующую ошибку:Тип ошибки Сведения об ошибке Описание badRequestmaxPlaylistExceededЭта ошибка возникает, если плейлист не может быть создан, поскольку на канале уже достигнуто максимальное количество плейлистов.
18 июня 2014 г.
В это обновление вошли следующие изменения.
-
В описание каждого метода API добавлена информация о том, какая часть квоты расходуется при его вызове. Аналогичным образом в определения параметров
partдобавлена информация о стоимости квоты для каждой части, которую можно получить с помощью вызова API. Например, вызов методаsubscriptions.insertстоит около 50 единиц квоты. Ресурсsubscriptionтакже состоит из трех частей (snippet,contentDetailsиsubscriberSnippet), и каждая из них стоит две единицы.Помните, что стоимость квот может измениться без предупреждения.
-
Ресурс
videoтеперь поддерживает 43 новые системы возрастных ограничений, которые определяют рейтинги, присвоенные видео различными национальными рейтинговыми агентствами. Теперь поддерживаются системы возрастных ограничений следующих стран: Аргентина, Австрия, Бельгия, Болгария, Чили (телевидение), Чили (кино), Чехия, Колумбия, Дания, Египет, Эстония, Финляндия, Франция, Греция, Гонконг, Исландия, Индонезия, Ирландия, Израиль, Италия, Кения, Латвия, Люксембург, Малайзия, Мальдивы, Мальта, Нидерланды, Нигерия, Норвегия, Перу, Филиппины, Португалия, Румыния, Сингапур, Словакия, ЮАР, Швеция, Швейцария, Тайвань, Таиланд и Венесуэла.
28 мая 2014 г.
В это обновление вошли следующие изменения.
-
Теперь метод
search.listподдерживает параметрыlocationиlocationRadius, которые позволяют искать видео, связанные с географическим местоположением. Чтобы получить результаты на основе местоположения, в запросе необходимо указать значения обоих параметров. Если в запросе будет только один из них, API вернет ошибку.-
Параметр
locationзадает координаты широты и долготы центра круглой географической области. -
Параметр
locationRadiusзадает максимальное расстояние, на котором может находиться местоположение, связанное с видео, от центра области, чтобы видео по-прежнему включалось в результаты поиска.
-
13 мая 2014 г.
В это обновление вошли следующие изменения.
-
В ресурс
channelдобавлено примечание к свойствуinvideoPromotion.items[]о том, что на канале обычно можно продвигать только один объект. Если вы попытаетесь вставить слишком много продвигаемых объектов, API вернет ошибкуtooManyPromotedItemsс кодом статуса HTTP400. -
Материал
channelSectionтеперь может содержать информацию о нескольких новых типах выбора редакции. Свойствоsnippet.typeресурсаchannelSectionтеперь поддерживает следующие значения:postedPlaylists– плейлисты, которые владелец канала добавил в фид действий.postedVideos– видео, которые владелец канала опубликовал в фиде действий канала.subscriptions– каналы, на которые подписан владелец канала.
-
Новое свойство
contentDetails.contentRating.ifcoRatingресурсаvideoопределяет возрастное ограничение, присвоенное видео Ирландским бюро классификации фильмов. -
Определение свойства
position.cornerPositionресурсаwatermarkбыло обновлено. Теперь в нем указано, что водяной знак всегда появляется в правом верхнем углу проигрывателя. -
В определение параметра
qдля методаsearch.listдобавлено примечание о том, что в поисковом запросе можно использовать логический оператор NOT (-), чтобы исключить видео, связанные с определенным поисковым запросом. В значении также можно использовать логический оператор ИЛИ (|), чтобы найти видео, связанные с одним из нескольких поисковых запросов. -
Определение свойства
pageInfo.totalResults, которое возвращается в ответе API на вызовsearch.list, было обновлено. Теперь в нем указано, что значение является приблизительным и может не соответствовать точному значению. Максимальное значение – 1 000 000. Не используйте это значение для создания ссылок на страницы. Вместо этого используйте значения свойствnextPageTokenиprevPageToken, чтобы определить, нужно ли показывать ссылки на страницы. -
Методы
watermarks.setиwatermarks.unsetбыли обновлены, чтобы отразить, что API возвращает код ответа HTTP204для успешных запросов к этим методам.
2 мая 2014 г.
В это обновление вошли следующие изменения.
-
Новый ресурс
i18nLanguageопределяет язык приложения, поддерживаемый сайтом YouTube. Язык приложения также называют языком интерфейса. На сайте YouTube язык интерфейса может выбираться автоматически на основе настроек аккаунта Google, языка браузера или IP-адреса. Пользователь также может вручную выбрать нужный язык интерфейса в нижнем колонтитуле сайта YouTube.API поддерживает метод list, позволяющий получить список поддерживаемых языков приложения. Поддерживаемые языки можно использовать в качестве значения параметра
hlпри вызове методов API, таких какvideoCategories.listиguideCategories.list. -
Новый ресурс
i18nRegionпозволяет определить географическую область, которую пользователь YouTube может выбрать в качестве предпочтительного региона контента. Регион контента также может называться языковым стандартом контента. На сайте YouTube регион контента может выбираться автоматически на основе эвристических методов, например домена YouTube или IP-адреса пользователя. Кроме того, пользователь может вручную выбрать нужный регион контента в нижнем колонтитуле сайта YouTube.API поддерживает метод list для получения списка поддерживаемых регионов контента. Коды поддерживаемых регионов можно использовать в качестве значения параметра
regionCodeпри вызове таких методов API, какsearch.list,videos.list,activities.listиvideoCategories.list.
7 апреля 2014 г.
В это обновление вошли следующие изменения.
-
Новый ресурс
channelSectionсодержит информацию о наборе видео, которые канал выбрал для продвижения. Например, в раздел можно добавить последние или самые популярные видео, а также ролики из одного или нескольких плейлистов.API поддерживает методы для получения списка, добавления, обновления и удаления разделов канала. Вы можете получить список разделов канала аутентифицированного пользователя, указав идентификатор канала или список уникальных идентификаторов разделов канала.
Документация по ошибкам также была обновлена, чтобы описать сообщения об ошибках, которые API поддерживает специально для этих новых методов.
-
Определение объекта
fileDetailsресурсаvideoбыло обновлено. Теперь в нем указано, что этот объект возвращается только в том случае, если свойствоprocessingDetails.fileDetailsAvailabilityвидео имеет значениеavailable.Кроме того, мы обновили определение объекта
suggestionsресурсаvideo, чтобы пояснить, что этот объект возвращается только в том случае, если свойствоprocessingDetails.tagSuggestionsAvailabilityилиprocessingDetails.editorSuggestionsAvailabilityвидео имеет значениеavailable. -
Документация по методам
videos.insertиvideos.updateбыла обновлена, чтобы отразить, что свойствоstatus.publishAtможно задать при вызове этих методов. -
В описание объекта
invideoPromotionресурсаchannelдобавлено пояснение, что этот объект может получить только владелец канала. -
Список параметров для метода
videos.rateбыл обновлен, чтобы отразить, что этот метод на самом деле не поддерживает параметрonBehalfOfContentOwner. Это ошибка в документации, поскольку запросыvideos.rate, в которых задан этот параметр, возвращают ошибку500.
31 марта 2014 г.
В это обновление вошли следующие изменения.
-
Новое свойство
status.publishAtресурсаvideoпозволяет указать дату и время, когда запланирована публикация видео с ограниченным доступом. Это свойство можно задать, только если статус доступа видео –privateи оно ещё не было опубликовано. На этот новый ресурс не распространяется правило прекращения поддержки.
13 марта 2014 г.
В это обновление вошли следующие изменения.
-
Теперь API поддерживает часть
contentOwnerDetailsдля ресурсовchannel. В новой части содержатся данные канала, которые относятся к партнерам YouTube, связанным с каналом, включая идентификатор владельца контента, связанного с каналом, а также дату и время, когда владелец контента и канал были связаны. Обратите внимание, что на эту новую часть не распространяются правила прекращения поддержки. -
В документации теперь указана максимальная длина в символах для следующих свойств:
Ресурс Свойство Максимальная длина channelinvideoPromotion.items[].customMessage40 символов videosnippet.title100 символов videosnippet.description5000 байт videosnippet.tags500 символов. Обратите внимание, что значение свойства представляет собой список, и запятые между элементами списка учитываются в ограничении. -
Свойство
brandingSettings.watch.featuredPlaylistIdресурсаchannelбольше не поддерживается. Если вы попытаетесь задать его значение, API вернет ошибку. -
В список значений, которые можно задать при добавлении или обновлении видео, добавлены следующие свойства ресурса
video: -
В документации по ошибкам теперь указан код ответа HTTP для каждого типа ошибок.
-
Теперь API поддерживает следующие ошибки:
Тип ошибки Сведения об ошибке Описание badRequest (400)invalidCriteriaМетод channels.listвозвращает эту ошибку, если в запросе указаны параметры фильтра, которые нельзя использовать вместе.badRequest (400)channelTitleUpdateForbiddenМетод channels.updateвозвращает эту ошибку, если вы пытаетесь обновить частьbrandingSettingsканала и изменить значение свойстваbrandingSettings.channel.title. (Если вы не укажете это свойство, API не вернет ошибку.)badRequest (400)invalidRecentlyUploadedByМетод channels.updateвозвращает эту ошибку, если в свойствеinvideoPromotion.items[].id.recentlyUploadedByуказан недействительный идентификатор канала.badRequest (400)invalidTimingOffsetМетод channels.updateвозвращает эту ошибку, если в частиinvideoPromotionуказано недопустимое смещение по времени.badRequest (400)tooManyPromotedItemsМетод channels.updateвозвращает эту ошибку, если в частиinvideoPromotionуказано больше продвигаемых объектов, чем разрешено.forbidden (403)promotedVideoNotAllowedМетод channels.updateвозвращает эту ошибку, если в свойствеinvideoPromotion.items[].id.videoIdуказан идентификатор видео, которое не удалось найти или использовать в качестве продвигаемого объекта.forbidden (403)websiteLinkNotAllowedМетод channels.updateвозвращает эту ошибку, если в свойствеinvideoPromotion.items[].id.websiteUrlуказан недопустимый URL.required (400)requiredTimingTypeМетод channels.updateвозвращает эту ошибку, если в запросе не указаны настройки времени по умолчанию, определяющие, когда YouTube должен показывать продвигаемый объект.required (400)requiredTimingМетод channels.updateдолжен содержать объектinvideoPromotion.items[].timingдля каждого продвигаемого товара.required (400)requiredWebsiteUrlМетод channels.updateдолжен содержать свойствоinvideoPromotion.items[].id.websiteUrlдля каждого продвигаемого объекта.badRequest (400)invalidPublishAtМетод videos.insertвозвращает эту ошибку, если в метаданных запроса указано недопустимое время запланированной публикации.
4 марта 2014 г.
В это обновление вошли следующие изменения.
-
YouTube Data API версии 3 теперь регулируется правилами прекращения поддержки, описанными в Условиях использования API YouTube. Обратите внимание, что на странице со списком API, на которые распространяются правила прекращения поддержки, указано, что некоторые функции API v3 не подпадают под действие этих правил.
5 декабря 2013 г.
В это обновление вошли следующие изменения.
-
Документация по методу
search.listобновлена. Теперь в ней указано, что при отправке поискового запроса не нужно указывать значение только для одного параметра фильтра. Вы можете задать значение для одного параметра фильтра или не задавать его вообще. -
В определения параметров метода
search.listдобавлены примечания о том, что значение параметраtypeдолжно быть равноvideo, если вы также указываете значение для любого из следующих параметров:eventTypevideoCaptionvideoCategoryIdvideoDefinitionvideoDimensionvideoDurationvideoEmbeddablevideoLicensevideoSyndicatedvideoType
-
Минимальный размер баннера канала уменьшен до 2048 x 1152 пкс. (ранее – 2120 x 1192 пкс). Кроме того, в документации по ресурсу
channelуказаны максимальные размеры всех изображений баннеров, которые можно получить с помощью API. Например, максимальный размер изображенияbrandingSettings.image.bannerTvImageUrlдля телевизионных приложений составляет 2120 x 1192 пкс, но фактический размер может быть 2048 x 1152 пкс. В Справочном центре YouTube можно найти дополнительные рекомендации по оптимизации фонового изображения канала для разных типов устройств. -
Определения нескольких свойств ресурса
channelбыли обновлены, чтобы отразить следующую информацию:- Максимальная длина значения свойства
brandingSettings.channel.description– 1000 символов. - Максимальная длина свойства
brandingSettings.channel.featuredChannelsTitle– 30 символов. - В свойстве
brandingSettings.channel.featuredChannelsUrls[]теперь можно указать до 100 каналов. - Если значение свойства
brandingSettings.channel.unsubscribedTrailerзадано, оно должно указывать идентификатор видео YouTube, которое является общедоступным или доступным по ссылке и принадлежит владельцу канала.
- Максимальная длина значения свойства
-
Метод
channels.updateтеперь поддерживает обновление свойстваinvideoPromotion.items[].promotedByContentOwner. Это свойство указывает, будет ли показываться имя владельца контента при показе промоакции. Его можно задать, только если запрос к API, устанавливающий значение свойства, выполняется от имени владельца контента с помощью параметраonBehalfOfContentOwner. -
Методы
playlistItems.listиplaylistItems.insertтеперь поддерживают параметрonBehalfOfContentOwner, который уже поддерживается для нескольких других методов. -
Теперь в свойстве
contentDetails.contentRating.acbRatingможно указывать возрастные ограничения, установленные Австралийской комиссией по классификации (ACB) для фильмов или Австралийским управлением по коммуникациям и СМИ (ACMA) для детских телепрограмм. -
Новые свойства
contentDetails.contentRating.catvRatingиcontentDetails.contentRating.catvfrRatingпозволяют указать возрастные ограничения, присвоенные видео в соответствии с канадской системой классификации телеконтента и системой возрастных ограничений Régie du cinéma, которая используется в Квебеке. -
Новое свойство
snippet.assignableресурсаvideoCategoryуказывает, можно ли связать с категорией видео обновленные или недавно загруженные видео. -
Добавлены примеры кода для следующих методов:
activities.insert(Go)channelBanners.insert(Python)channels.update(Python)playlistItems.list(Go)search.list(Перейти)thumbnails.set(Java)videos.insert(Go)
24 октября 2013 г.
В это обновление вошли следующие изменения.
-
В API есть две дополнительные функции, которые помогают находить и продвигать контент прямых трансляций:
Новое свойство
snippet.liveBroadcastContentв результатах поиска указывает, есть ли в ресурсе видео или канала контент прямой трансляции. Допустимые значения:upcoming,activeиnone.-
Новое свойство
snippet.liveBroadcastContentресурсаvideoуказывает, является ли видео предстоящей или текущей прямой трансляцией. Ниже приведены возможные значения этого свойства.upcoming– видео является прямой трансляцией, которая ещё не началась.active– видео является прямой трансляцией.none– видео не является предстоящей или текущей прямой трансляцией. Это значение будет присваиваться завершенным трансляциям, которые по-прежнему доступны для просмотра на YouTube.
-
Новое свойство
liveStreamingDetailsресурсаvideo– это объект, содержащий метаданные о прямой видеотрансляции. Чтобы получить эти метаданные, включитеliveStreamingDetailsв список частей ресурса в значении параметраpart. Метаданные включают следующие новые свойства:liveStreamingDetails.actualStartTime– время фактического начала трансляции. Это значение будет доступно, когда трансляция перейдет в статусactive.liveStreamingDetails.actualEndTime– время фактического окончания трансляции. (Это значение появится после завершения трансляции.)liveStreamingDetails.scheduledStartTime– время, на которое запланировано начало трансляции.liveStreamingDetails.scheduledEndTime– время, когда трансляция должна закончиться. Если значение свойства не указано или свойство отсутствует, трансляция будет идти бесконечно.liveStreamingDetails.concurrentViewers– количество зрителей прямой трансляции.
Чтобы получить эти метаданные, добавьте
liveStreamingDetailsв значение параметраpartпри вызове методаvideos.list,videos.insertилиvideos.update.
Обратите внимание, что 1 октября 2013 года были выпущены две другие функции для идентификации контента прямых трансляций: параметр
eventTypeметодаsearch.listи свойствоsnippet.liveBroadcastContentрезультата поиска. -
-
Метод
videos.insertтеперь поддерживает параметрnotifySubscribers, который указывает, должен ли YouTube отправлять уведомление о новом видео пользователям, подписанным на канал. Значение по умолчанию –True. Это значит, что подписчики будут получать уведомления о новых видео. Однако если владелец канала загружает много видео, он может выбрать значениеFalse, чтобы не отправлять подписчикам уведомления о каждом новом видео. -
Список свойств, которые можно изменить при вызове метода
channels.update, был обновлен и теперь включает свойстваinvideoPromotion.items[].customMessageиinvideoPromotion.items[].websiteUrl. Кроме того, в списке теперь указано, какие свойстваbrandingSettingsможно изменять. Эти свойстваbrandingSettingsуже можно было изменять, поэтому изменение документации не отражает изменение существующих функций API. -
Методы
playlists.insert,playlists.updateиplaylists.deleteтеперь поддерживают параметрonBehalfOfContentOwner, который уже поддерживается для нескольких других методов. -
Метод
playlists.insertтеперь поддерживает параметрonBehalfOfContentOwnerChannel, который уже поддерживается для нескольких других методов. -
Свойство
contentDetails.contentRating.tvpgRatingресурсаvideoтеперь поддерживает значениеpg14, которое соответствует возрастному ограничениюTV-14. -
Определение свойства
snippet.liveBroadcastContent, которое является частью результатов поиска, было исправлено, чтобы отразить, чтоlive– допустимое значение свойства, аactive– недопустимое. -
Свойство
contentDetails.contentRating.mibacRatingресурсаvideoтеперь поддерживает две дополнительные оценки:mibacVap(VAP) – детям рекомендуется смотреть в сопровождении взрослых.mibacVm6(V.M.6) – только для зрителей от 6 лет.mibacVm12(V.M.12) – только для зрителей от 12 лет.
-
Новое свойство
invideoPromotion.items[].promotedByContentOwnerресурсаchannelуказывает, будет ли показываться имя владельца контента при показе промоакции. Это поле можно задать, только если запрос к API, в котором задается значение, отправляется от имени владельца контента. Подробнее о параметреonBehalfOfContentOwner…
1 октября 2013 г.
В это обновление вошли следующие изменения.
-
Новый объект
auditDetailsресурсаchannelсодержит данные канала, которые многоканальная сеть (МКС) оценивает, решая, принимать ли определенный канал. Обратите внимание, что любой запрос к API, который извлекает эту часть ресурса, должен содержать токен авторизации с областью действияhttps://www.googleapis.com/auth/youtubepartner-channel-audit. Кроме того, любой токен, в котором используется этот диапазон, должен быть отозван, когда МКС принимает или отклоняет канал, или в течение двух недель с даты выдачи токена. -
Свойство
invideoPromotion.items[].id.typeресурсаchannelтеперь поддерживает значениеrecentUpload, которое указывает, что продвигаемый объект – это последнее загруженное видео с указанного канала.По умолчанию канал совпадает с тем, для которого заданы данные о продвижении в видео. Однако вы можете продвигать последнее видео, загруженное на другой канал, задав для нового свойства
invideoPromotion.items[].id.recentlyUploadedByидентификатор канала для этого канала. -
Ресурс
channelсодержит три новых свойства (brandingSettings.image.bannerTvLowImageUrl,brandingSettings.image.bannerTvMediumImageUrl,brandingSettings.image.bannerTvHighImageUrl), которые указывают URL баннеров, показываемых на страницах каналов в приложениях для телевизоров. -
Новое свойство
snippet.liveBroadcastContentв результатах поиска указывает, есть ли в ресурсе видео или канала контент прямой трансляции. Допустимые значения:upcoming,activeиnone.- Для ресурса
videoзначениеupcomingуказывает, что видео – это прямая трансляция, которая ещё не началась, а значениеactive– что трансляция уже идет. - Для ресурса
channelзначениеupcomingуказывает, что на канале есть запланированная трансляция, которая ещё не началась, а значениеacive– что на канале идет прямая трансляция.
- Для ресурса
-
В ресурсе
watermarkсвойствоtargetChannelIdизменено с объекта на строку. Вместо дочернего свойства, указывающего идентификатор канала YouTube, на который ведет ссылка с логотипа, теперь используется само свойствоtargetChannelId. Соответственно, свойствоtargetChannelId.valueресурса было удалено. -
Метод
thumbnails.setтеперь поддерживает параметрonBehalfOfContentOwner, который уже поддерживается для нескольких других методов. -
Теперь метод
search.listподдерживает параметрeventType, который позволяет ограничить поиск активными, предстоящими или завершенными трансляциями. -
Новое свойство
contentDetails.contentRating.mibacRatingопределяет возрастной рейтинг, присвоенный видео Министерством культурного наследия, культурной деятельности и туризма Италии. -
Теперь API поддерживает следующие ошибки:
Тип ошибки Сведения об ошибке Описание badRequestinvalidImageМетод thumbnails.setвозвращает эту ошибку, если предоставленный контент изображения недействителен.forbiddenvideoRatingDisabledМетод videos.rateвозвращает эту ошибку, если владелец видео, которое оценивается, отключил оценки для этого видео.
27 августа 2013 г.
В это обновление вошли следующие изменения.
-
Новый ресурс
watermarkопределяет изображение, которое показывается во время воспроизведения видео на указанном канале. Вы также можете указать целевой канал, на который будет вести водяной знак, а также время его появления и продолжительность показа.Метод
watermarks.setпозволяет загрузить и установить логотип канала. Методwatermarks.unsetудаляет изображение водяного знака канала.В документации по ошибкам описаны сообщения об ошибках, которые API поддерживает специально для методов
watermarks.setиwatermarks.unset. -
Новое свойство
statistics.hiddenSubscriberCountресурсаchannelсодержит логическое значение, которое указывает, скрыто ли число подписчиков канала. Поэтому значение свойства –false, если количество подписчиков канала показывается всем. -
Метод
playlists.listтеперь поддерживает параметрыonBehalfOfContentOwnerиonBehalfOfContentOwnerChannel. Оба параметра уже поддерживаются для нескольких других методов. -
Метод
videos.listтеперь поддерживает параметрregionCode, который определяет регион контента, для которого нужно получить диаграмму. Этот параметр можно использовать только в сочетании с параметромchart. Значение параметра – это код страны в формате ISO 3166-1 alpha-2. -
В
error documentationописана следующая новая распространенная ошибка запроса, которая может возникать при использовании нескольких методов API:Тип ошибки Сведения об ошибке Описание forbiddeninsufficientPermissionsОбласти действия, связанные с токеном OAuth 2.0, который был предоставлен для запроса, не позволяют получить доступ к запрашиваемым данным.
15 августа 2013 г.
В это обновление вошли следующие изменения.
-
Объект
invideoPromotionресурсаchannelимеет следующие новые и обновленные свойства:-
Теперь API позволяет указывать сайт в качестве продвигаемого объекта. Для этого задайте для свойства
invideoPromotion.items[].id.typeзначениеwebsiteи укажите URL в новом свойствеinvideoPromotion.items[].id.websiteUrl. Также используйте новое свойствоinvideoPromotion.items[].customMessage, чтобы задать специальное сообщение, которое будет показываться в рамках промоакции.Это могут быть ссылки на связанные сайты, сайты продавцов или социальные сети. Подробную информацию о том, как включить ссылки для своего контента, можно найти в Справочном центре YouTube в статьях Как связать сайт с каналом YouTube и Как добавить ссылку на сайт продавца.
Добавляя рекламные ссылки, вы соглашаетесь с тем, что они не будут использоваться для перенаправления трафика на неавторизованные сайты и что они будут соответствовать правилам Google Рекламы, правилам размещения рекламы на YouTube, правилам сообщества YouTube и Условиям использования YouTube.
-
Свойства, связанные с настройками времени показа продвигаемых объектов во время воспроизведения видео, были реструктурированы:
-
Объект
invideoPromotion.timingперемещен вinvideoPromotion.items[].timing. Теперь этот объект позволяет настраивать данные о времени для каждого продвигаемого товара в спискеinvideoPromotion.items[]. -
Новый объект
invideoPromotion.defaultTimingпозволяет задать настройки времени по умолчанию для промоакции. Эти настройки определяют, когда во время воспроизведения видео на вашем канале будет показываться продвигаемый товар. Вы можете переопределить время по умолчанию для любого продвигаемого объекта с помощью объектаinvideoPromotion.items[].timing. -
Новое свойство
invideoPromotion.items[].timing.durationMsопределяет время показа промоакции в миллисекундах. ОбъектinvideoPromotion.defaultTimingтакже содержит полеdurationMs, в котором указывается время показа продвигаемого объекта по умолчанию.
-
-
Свойства
invideoPromotion.items[].typeиinvideoPromotion.items[].videoIdперемещены в объектinvideoPromotion.items[].id.
-
-
Теперь метод
subscriptions.listподдерживает параметрыonBehalfOfContentOwnerиonBehalfOfContentOwnerChannel. Оба параметра уже поддерживаются для нескольких других методов. -
В ответе API на запрос
thumbnails.setзначение свойстваkindизменилось сyoutube#thumbnailListResponseнаyoutube#thumbnailSetResponse. -
Добавлены примеры кода для следующих методов:
channels.update(Java, Python)playlists.insert(.NET, PHP)subscriptions.insert(PHP, Python)thumbnails.set(PHP, Python)videos.insert(PHP)videos.list(PHP)videos.rate(Python)videos.update(Java, PHP, Python)
Обратите внимание, что пример на Python для метода
playlistItems.insertтакже был удален, поскольку функциональность, которую он демонстрировал, теперь обрабатывается методомvideos.rate. -
В
error documentationописана следующая новая ошибка контекста запроса, которая может возникнуть при использовании любого метода API, поддерживающего параметр запросаmine:Тип ошибки Сведения об ошибке Описание badRequestinvalidMineПараметр mineнельзя использовать в запросах, в которых аутентифицированный пользователь является партнером YouTube. Удалите параметрmine, выполните аутентификацию в качестве пользователя YouTube, удалив параметрonBehalfOfContentOwner, или укажите параметрonBehalfOfContentOwnerChannel, если он доступен для вызываемого метода.
8 августа 2013 г.
В это обновление вошли следующие изменения.
-
В разделе Использование квоты руководства Начало работы с YouTube Data API обновлена информация о стоимости загрузки видео. Теперь она составляет около 1600 единиц вместо 16 000.
30 июля 2013 г.
В это обновление вошли следующие изменения.
-
В ресурсе
channelBannerзначение свойстваkindизменилось сyoutube#channelBannerInsertResponseнаyoutube#channelBannerResource. Этот ресурс возвращается в ответ на запросchannelBanners.insert. -
Новое свойство
brandingSettings.channel.profileColorресурсаchannelуказывает на основной цвет, который дополняет контент канала. Значение свойства состоит из знака решетки (#) и шестизначной шестнадцатеричной строки, например#2793e6. -
Теперь API позволяет указать, на что именно оформляется подписка: на все действия на канале или только на новые видео. Новое свойство
contentDetails.activityTypeресурсаsubscriptionопределяет, о каких действиях подписчик будет получать уведомления. Допустимые значения свойства:allиuploads. -
Метод
videos.listподдерживает новые параметры для получения хит-парада самых популярных видео на YouTube:- Параметр
chartопределяет, какую диаграмму вы хотите получить. В настоящее время поддерживается только значениеmostPopular. Обратите внимание, что параметрchartявляется параметром фильтра, а значит, его нельзя использовать в одном запросе с другими параметрами фильтра (idиmyRating). - Параметр
videoCategoryIdопределяет категорию видео, для которой нужно получить диаграмму. Этот параметр можно использовать только в сочетании с параметромchart. По умолчанию диаграммы не ограничены определенной категорией.
- Параметр
-
Новое свойство
topicDetails.relevantTopicIds[]ресурсаvideoсодержит список идентификаторов тем Freebase, связанных с видео или его контентом. Темы могут упоминаться или появляться в видео. -
Свойство
recordingDetails.location.elevationресурсаvideoбыло переименовано вrecordingDetails.location.altitude, а свойствоfileDetails.recordingLocation.location.elevation– вfileDetails.recordingLocation.location.altitude. -
Объект
contentDetails.contentRatingресурсаvideoсодержит информацию о возрастных ограничениях, установленных для видео в соответствии с различными системами, например MPAA и TVPG. Для каждой системы возрастных ограничений API теперь поддерживает значение, указывающее, что видео не имеет возрастных ограничений. Обратите внимание, что для возрастных ограничений MPAA часто используется категория "Без возрастных ограничений", чтобы обозначить полные версии фильмов, для которых официальное возрастное ограничение было присвоено только сокращенной версии. -
Новое свойство
contentDetails.contentRating.ytRatingресурсаvideoпозволяет идентифицировать контент с ограничениями по возрасту. Значение свойства будет равноytAgeRestricted, если YouTube определит, что видео содержит контент, не подходящий для пользователей младше 18 лет. Если свойство отсутствует или его значение пустое, то контент не был идентифицирован как имеющий возрастные ограничения. -
Параметр
mySubscribersметодаchannels.listбольше не поддерживается. Используйте методsubscriptions.listи его параметрmySubscribers, чтобы получить список подписчиков канала аутентифицированного пользователя. -
Методы
channelBanners.insert,channels.update,videos.getRatingиvideos.rateтеперь поддерживают параметрonBehalfOfContentOwner. Этот параметр указывает, что аутентифицированный пользователь действует от имени владельца контента, указанного в значении параметра. -
Документация по методу
channels.updateбыла обновлена. Теперь в ней указано, что этот метод можно использовать для обновления объектаbrandingSettingsресурсаchannelи его дочерних свойств. В документации также приведен обновленный список свойств, которые можно задать для объектаinvideoPromotionресурсаchannel. -
В
error documentationописаны следующие новые ошибки:Тип ошибки Сведения об ошибке Описание forbiddenaccountDelegationForbiddenЭта ошибка не связана с каким-либо конкретным методом API. Это означает, что у аутентифицированного пользователя нет разрешения действовать от имени указанного аккаунта Google. forbiddenauthenticatedUserAccountClosedЭта ошибка не связана с каким-либо конкретным методом API. Она означает, что аккаунт YouTube аутентифицированного пользователя закрыт. Если пользователь действует от имени другого аккаунта Google, эта ошибка означает, что тот аккаунт закрыт. forbiddenauthenticatedUserAccountSuspendedЭта ошибка не связана с определенным методом API. Это означает, что аккаунт YouTube аутентифицированного пользователя заблокирован. Если пользователь действует от имени другого аккаунта Google, эта ошибка указывает на то, что заблокирован другой аккаунт. forbiddenauthenticatedUserNotChannelЭта ошибка не связана с каким-либо определенным методом API. Это означает, что сервер API не может определить канал, связанный с запросом к API. Если запрос авторизован и в нем используется параметр onBehalfOfContentOwner, вам также следует задать параметрonBehalfOfContentOwnerChannel.forbiddencmsUserAccountNotFoundЭта ошибка не связана с каким-либо конкретным методом API. Пользователь CMS не может действовать от имени указанного владельца контента. notFoundcontentOwnerAccountNotFoundЭта ошибка не связана с каким-либо конкретным методом API. Указанный аккаунт владельца контента не найден. badRequestinvalidPartЭта ошибка не связана с каким-либо определенным методом API. В параметре partзапроса указаны части, которые не могут быть записаны одновременно.badRequestvideoChartNotFoundМетод videos.listвозвращает эту ошибку, если в запросе указана неподдерживаемая или недоступная видеодиаграмма.notFoundvideoNotFoundМетод videos.updateвозвращает эту ошибку, если не удается найти видео, которое вы пытаетесь обновить. Проверьте значение свойстваidв теле запроса.
10 июня 2013 г.
В это обновление вошли следующие изменения.
-
Новый параметр
forUsernameметодаchannels.listпозволяет получать информацию о канале по имени пользователя YouTube. -
Метод
activities.listтеперь поддерживает параметрregionCode, который указывает API, что нужно возвращать результаты, относящиеся к указанной стране. YouTube использует это значение, если предыдущие действия авторизованного пользователя на YouTube не предоставляют достаточно информации для создания фида действий. -
Ресурсы плейлистов теперь содержат свойство
snippet.tags. Это свойство возвращается только авторизованным пользователям, которые запрашивают данные о собственных плейлистах. Авторизованные пользователи также могут задавать теги плейлистов при вызове методовplaylists.insertилиplaylists.update. -
Параметр
onBehalfOfContentOwner, который ранее поддерживался для методовchannels.listиsearch.list, теперь также поддерживается для методовvideos.insert,videos.updateиvideos.delete. Обратите внимание, что при использовании этого параметра в вызове методаvideos.insertв запросе также должно быть указано значение нового параметраonBehalfOfContentOwnerChannel, который определяет канал, на который будет добавлено видео. Канал должен быть связан с владельцем контента, указанным в параметреonBehalfOfContentOwner.Этот параметр указывает, что учетные данные авторизации запроса идентифицируют пользователя системы управления контентом YouTube, который действует от имени владельца контента, указанного в значении параметра. Аккаунт CMS, с помощью которого пользователь проходит аутентификацию, должен быть связан с указанным владельцем контента YouTube.
Этот параметр предназначен для партнеров, которые владеют большим количеством каналов YouTube и управляют ими. Этот параметр позволяет партнерам выполнить аутентификацию один раз и получить доступ ко всем данным о видео и каналах, не предоставляя учетные данные для каждого канала отдельно.
Теперь с помощью этого параметра партнер может добавлять, изменять и удалять видео на любом из своих каналов.
-
В
error documentationописаны следующие новые ошибки:Тип ошибки Сведения об ошибке Описание forbiddeninsufficientCapabilitiesЭта ошибка не связана с каким-либо конкретным методом API. Это означает, что у пользователя CMS, вызывающего API, недостаточно разрешений для выполнения запрошенной операции. Эта ошибка связана с использованием параметра onBehalfOfContentOwner, который поддерживается несколькими методами API.unauthorizedauthorizationRequiredМетод activities.listвозвращает эту ошибку, если в запросе используется параметрhome, но не выполнена авторизация. -
Из ресурса
channelsудалено свойствоinvideoPromotion.channelId, поскольку идентификатор канала уже указан в свойствеid. -
В новом руководстве Работа с идентификаторами каналов объясняется, как API использует идентификаторы каналов. Руководство будет особенно полезно разработчикам, которые переходят на новую версию API и у которых есть приложения, запрашивающие контент для пользователя
defaultили использующие предположение о том, что у каждого канала YouTube есть уникальное имя пользователя (это уже не так).
22 мая 2013 г.
В это обновление вошли следующие изменения.
-
Новый метод
channelBanners.insertпозволяет загрузить баннер, который затем можно установить в качестве баннера канала с помощью нового свойстваbrandingSettings.image.bannerExternalUrlресурсаchannel. -
В документацию по методу
channels.updateдобавлен список свойств, которые можно изменить при вызове метода. -
В документации по ресурсу
videoзначениеunspecifiedбольше не указано как допустимое для свойствsuggestions.processingErrors[],suggestions.processingHints[],suggestions.processingWarnings[]иsuggestions.editorSuggestions[]. -
Параметр
maxResultsметодаvideos.listтеперь имеет значение по умолчанию5. -
Теперь в
error documentationперечислены ошибки для методовchannelBanners.insertиsubscriptions.list. Также в нем перечислены новые ошибки для методаchannels.update.
14 мая 2013 г.
В это обновление вошли следующие изменения.
-
На отдельных страницах теперь приведены примеры кода для Java, .NET, PHP и Ruby.
-
На странице с примерами кода на языке Python теперь есть примеры добавления подписки, создания плейлиста и обновления видео.
10 мая 2013 г.
В это обновление вошли следующие изменения.
-
YouTube больше не идентифицирует экспериментальные функции и сервисы API. Теперь мы публикуем список API YouTube, на которые распространяется правило прекращения поддержки.
8 мая 2013 г.
В это обновление вошли следующие изменения.
-
Ресурсы канала теперь поддерживают объект
inVideoPromotion, который содержит информацию о промокампании, связанной с каналом. В рамках рекламной кампании на канале можно показывать значки продвигаемых видео в видеопроигрывателе во время воспроизведения видео с канала.Чтобы получить эти данные, добавьте
invideoPromotionв значение параметраpartв запросеchannels.list. -
Новый метод
channels.updateпозволяет обновлять данные о рекламных кампаниях в видео на канале. Обратите внимание, что этот метод поддерживает обновление только частиinvideoPromotionресурсаchannelи пока не поддерживает обновление других частей этого ресурса.
2 мая 2013 г.
В это обновление вошли следующие изменения.
-
Ресурсы канала теперь поддерживают свойство
status.isLinked, которое указывает, идентифицируют ли данные канала пользователя, уже связанного с именем пользователя YouTube или аккаунтом Google+. У пользователя, у которого есть одна из этих ссылок, уже есть публичный профиль на YouTube, который необходим для выполнения некоторых действий, например загрузки видео. -
Ресурсы подписок теперь поддерживают часть
subscriberSnippet. Этот объект содержит фрагмент данных о канале подписчика. -
Теперь API поддерживает метод
videos.getRating, который позволяет получить оценки, поставленные пользователем, прошедшим аутентификацию, одному или нескольким видео. -
Новый параметр
myRatingметодаvideos.listпозволяет получить список видео, которым аутентифицированный пользователь поставил оценкуlikeилиdislike.Параметры
myRatingиidтеперь считаются параметрами фильтрации, а это значит, что в запросе к API должен быть указан только один из них. (Раньше параметрidбыл обязательным для этого метода.)Если у запроса на получение информации о возрастных ограничениях нет необходимых разрешений, метод возвращает ошибку
forbidden. -
С появлением параметра
myRatingметодvideos.listтакже был обновлен и теперь поддерживает разбиение на страницы. Однако обратите внимание, что параметры разбивки на страницы поддерживаются только для запросов, в которых используется параметрmyRating. (Параметры и информация о разбиении на страницы не поддерживаются для запросов, в которых используется параметрid.)-
Параметр
maxResultsопределяет максимальное количество видео, которое API может вернуть в наборе результатов, а параметрpageTokenуказывает на конкретную страницу в наборе результатов, которую вы хотите получить. -
Ресурс
youtube#videoListResponse, который возвращается в ответ на запросvideos.list, теперь содержит объектpageInfo. В нем есть такие сведения, как общее количество результатов и количество результатов, включенных в текущий набор. Ресурсyoutube#videoListResponseтакже может включать свойстваnextPageTokenиprevPageToken, каждое из которых содержит токен, который можно использовать для получения определенной страницы в наборе результатов.
-
-
Метод
videos.insertподдерживает следующие новые параметры:autoLevels– задайте для этого параметра значениеtrue, чтобы YouTube автоматически улучшал освещение и цвет в видео.stabilize– задайте для этого параметра значениеtrue, чтобы YouTube скорректировал видео, убрав дрожание, вызванное движениями камеры.
-
Свойство
channelTitleдобавлено вsnippetдля следующих ресурсов:playlistItem– свойство, в котором указано название канала, добавившего элемент плейлиста.playlist– название канала, на котором создан плейлист.subscription– свойство, в котором указано название канала, на который оформлена подписка.
-
Добавлены примеры кода для следующих методов:
activities.insert(Ruby)playlistItems.list(.NET)search.list(.NET)subscriptions.insert(Java, Ruby)videos.insert(.NET, Ruby)
-
Новый параметр
mySubscribersметодаsubscriptions.listпозволяет получить список подписчиков пользователя, прошедшего аутентификацию. Этот параметр можно использовать только в авторизованном запросе.Примечание. Эта функция должна заменить параметр
mySubscribers, который сейчас поддерживается для методаchannels.list. Поддержка этого параметра будет прекращена. -
В ресурсе
videoзначение свойстваunspecifiedбольше не может использоваться ни для одного из следующих свойств: -
Теперь при отправке запросов к API с неожиданными параметрами возвращается ошибка
badRequest, а в качестве причины ошибки указываетсяunexpectedParameter. -
Изменено сообщение об ошибке, которое возвращает метод
playlistItems.insert, когда плейлист уже содержит максимально допустимое количество элементов. Теперь ошибка отмечается значкомforbidden, а ее причина –playlistContainsMaximumNumberOfVideos.
19 апреля 2013 г.
В это обновление вошли следующие изменения.
-
Новый метод
videos.rateпозволяет пользователю установить рейтингlikeилиdislikeдля видео или удалить рейтинг.Документация по ошибкам также была обновлена. Теперь в ней перечислены ошибки, которые API может возвращать в ответ на вызов метода
videos.rate. -
Теперь в документации по API значки видео определяются как отдельный ресурс, а новый метод
thumbnails.setпозволяет загружать на YouTube собственные значки и устанавливать их для видео.Документация по ошибкам также была обновлена. Теперь в ней перечислены ошибки, которые API может возвращать в ответ на вызов метода
thumbnails.set.Обратите внимание, что это изменение не влияет на существующие ресурсы, которые возвращают значки. Значки видео возвращаются в этих ресурсах так же, как и раньше, но теперь в документации перечислены названия разных размеров значков, которые может возвращать API.
-
Новая часть
brandingSettingsресурсаchannelсодержит настройки, текст и изображения для страницы канала и страниц просмотра видео. -
Ресурс
playlistItemсодержит следующие новые свойства:-
Новый объект
statusсодержит информацию о статусе объекта в плейлисте, а свойствоstatus.privacyStatusопределяет статус конфиденциальности объекта в плейлисте.
-
-
Ресурс
videoсодержит следующие новые свойства:-
Свойство
status.publicStatsViewableуказывает, доступна ли расширенная статистика видео на странице просмотра. По умолчанию статистика доступна для просмотра. Некоторые данные, например количество просмотров и оценки, будут видны, даже если для этого свойства задано значениеfalse. Значение этого свойства можно задать при вызове методаvideos.insertилиvideos.update. -
Объект
contentDetails.contentRatingсодержит оценки, которые видео получило в соответствии с различными системами возрастных ограничений. Ниже приведен список поддерживаемых систем возрастных ограничений и ссылки на ресурсы, связанные с каждой из них. Определения свойств указывают на поддерживаемые значения возрастных ограничений для каждой системы.Страна Система возрастных ограничений Свойство United StatesАмериканская ассоциация кинокомпаний (MPAA) contentDetails.contentRating.mpaaRatingUnited StatesTV Parental Guidelines contentDetails.contentRating.tvpgRatingAustraliaАвстралийская аттестационная комиссия (ACB) contentDetails.contentRating.acbRatingBrazilDepartamento de Justiça, Classificação, Qualificação e Títulos contentDetails.contentRating.djctqRatingCanadaКанадская система оценки домашнего видео (CHVRS) contentDetails.contentRating.chvrsRatingFranceCentre national du cinéma et de l'image animée (Национальный центр кинематографии и анимации, Министерство культуры Франции) contentDetails.contentRating.fmocRatingGermanyFreiwillige Selbstkontrolle der Filmwirtschaft (FSK) contentDetails.contentRating.fskRatingGreat BritainБританский совет по классификации фильмов (BBFC) contentDetails.contentRating.bbfcRatingIndiaЦентральный совет по сертификации фильмов (CBFC) contentDetails.contentRating.cbfcRatingJapan映倫管理委員会 (EIRIN) contentDetails.contentRating.eirinRatingKorea영상물등급위원회 (KMRB) contentDetails.contentRating.kmrbRatingMexicoGeneral Directorate of Radio, Television and Cinematography (RTC) contentDetails.contentRating.rtcRatingNew ZealandOffice of Film and Literature Classification contentDetails.contentRating.oflcRatingRussiaНациональный реестр фильмов Российской Федерации contentDetails.contentRating.russiaRatingSpainInstituto de la Cinematografía y de las Artes Audiovisuales (ICAA)contentDetails.contentRating.icaaRating
-
-
Документация по методу
playlistItems.updateбыла обновлена, чтобы отразить тот факт, что свойствоsnippet.resourceIdдолжно быть указано в ресурсе, отправленном в теле запроса. -
Метод
search.listтеперь поддерживает следующие функции:-
Новый параметр
forMineпозволяет ограничить поиск только видео аутентифицированного пользователя. -
Параметр
orderтеперь поддерживает сортировку результатов по названию в алфавитном порядке (order=title) или по количеству видео в порядке убывания (order=videoCount). -
Новый параметр
safeSearchуказывает, должны ли результаты поиска включать контент с ограничениями.
-
-
Метод
videos.insertподдерживает несколько новых ошибок, которые перечислены в таблице ниже:Тип ошибки Сведения об ошибке Описание badRequestinvalidCategoryIdВ свойстве snippet.categoryIdуказан недопустимый идентификатор категории. Чтобы получить список поддерживаемых категорий, используйте методvideoCategories.list.badRequestinvalidRecordingDetailsВ теге metadataуказаны неверные сведения о записи.badRequestinvalidVideoGameRatingВ метаданных запроса указан недопустимый рейтинг видеоигры. badRequestinvalidVideoMetadataНедействительные метаданные запроса. -
Параметр
onBehalfOfContentOwnerбыл удален из списка поддерживаемых параметров для методовvideos.updateиvideos.delete.
12 марта 2013 г.
В это обновление вошли следующие изменения.
-
Свойство
channelTitleдобавлено вsnippetдля следующих ресурсов: -
Метод
search.listподдерживает следующие новые параметры:-
Параметр
channelTypeпозволяет ограничить поиск каналов, чтобы получить все каналы или только шоу. -
Параметр
videoTypeпозволяет ограничить поиск видео, чтобы получить все видео, только фильмы или только эпизоды шоу.
-
-
В определение части
recordingDetailsресурсаvideoдобавлено примечание о том, что объект будет возвращаться для видео, только если для него заданы данные о геолокации или время записи. -
Метод
playlistItems.updateтеперь возвращает ошибкуinvalidSnippet, которая возникает, если в запросе к API не указан действительный фрагмент. -
Некоторые методы API поддерживают новые параметры, предназначенные исключительно для партнеров YouTube по контенту. Партнеры YouTube по контенту – это кино- и телестудии, звукозаписывающие компании и другие авторы, которые размещают свой контент на YouTube.
-
Параметр
onBehalfOfContentOwnerуказывает, что учетные данные авторизации запроса идентифицируют пользователя системы управления контентом YouTube, который действует от имени владельца контента, указанного в значении параметра. Аккаунт CMS, с помощью которого пользователь проходит аутентификацию, должен быть связан с указанным владельцем контента YouTube.Этот параметр предназначен для партнеров, которые управляют несколькими каналами YouTube. Этот параметр позволяет партнерам пройти аутентификацию один раз и получить доступ к данным всех своих видео и каналов, не вводя учетные данные для каждого канала по отдельности.
Этот параметр поддерживается методами
channels.list,search.list,videos.delete,videos.listиvideos.update. -
Параметр
managedByMe, который поддерживается методомchannels.list, указывает API на необходимость вернуть все каналы, принадлежащие владельцу контента, указанному в параметреonBehalfOfContentOwner. -
Параметр
forContentOwner, который поддерживается методомsearch.list, указывает API, что в результатах поиска должны быть только ресурсы, принадлежащие владельцу контента, указанному в параметреonBehalfOfContentOwner.
-
25 февраля 2013 г.
В это обновление вошли следующие изменения.
-
API поддерживает несколько новых частей и свойств для ресурсов
video:-
Новые части
fileDetails,processingDetailsиsuggestionsсодержат информацию о загруженных видео. Эти данные очень полезны в приложениях, которые позволяют загружать видео, и включают следующее:- статус и ход обработки;
- ошибки и другие проблемы, возникшие при обработке видео;
- наличие значков видео;
- предложения по улучшению качества видео или метаданных;
- сведения об исходном файле, загруженном на YouTube;
Все эти части может получить только владелец видео. В списке ниже кратко описаны новые части, а в документации ресурса
videoопределены все свойства, которые содержит каждая часть.-
Объект
fileDetailsсодержит информацию о видеофайле, загруженном на YouTube, в том числе о его разрешении, продолжительности, аудио- и видеокодеках, битрейте потока и т. д. -
Объект
processingProgressсодержит информацию о ходе обработки загруженного видеофайла. Свойства объекта позволяют определить текущий статус обработки и оценить время, оставшееся до ее завершения. В этом разделе также указано, доступны ли для видео разные типы данных или контента, например сведения о файле или значки.Этот объект предназначен для опроса, чтобы пользователь, загрузивший видео, мог отслеживать ход обработки загруженного видеофайла на YouTube.
-
Объект
suggestionsсодержит рекомендации по улучшению качества видео или метаданных загруженного видео.
-
Часть
contentDetailsсодержит четыре новых свойства. Эти свойства можно получить с помощью неаутентифицированных запросов.dimension– указывает, доступно ли видео в 2D или 3D.definition– указывает, доступно ли видео в стандартном разрешении или HD.caption– указывает, доступны ли субтитры для видео.licensedContent– указывает, содержит ли видео контент, на который заявил права партнер YouTube.
-
В части
statusдобавлены два новых свойства. Владельцы видео могут задавать значения для обоих свойств при добавлении или обновлении видео. Эти свойства также можно получить с помощью запросов без аутентификации.embeddable– указывает, можно ли встроить видео на другой сайт.license– лицензия на видео. Допустимые значения:creativeCommonиyoutube.
-
-
Определение параметра
partбыло обновлено для методовvideos.list,videos.insertиvideos.update, чтобы перечислить новые добавленные части, описанные выше, а также частьrecordingDetails, которая была случайно опущена. -
Новое свойство
contentDetails.googlePlusUserIdресурсаchannelсодержит идентификатор профиля Google+, связанного с каналом. Это значение можно использовать для создания ссылки на профиль Google+. -
Теперь в каждом объекте значка указывается ширина и высота изображения. В настоящее время уменьшенные изображения возвращаются в ресурсах
activity,channel,playlist,playlistItem,search result,subscriptionиvideo. -
Метод
playlistItems.listтеперь поддерживает параметрvideoId, который можно использовать вместе с параметромplaylistId, чтобы получить только тот элемент плейлиста, который представляет указанное видео.Если видео, указанное в параметре, не найдено в плейлисте, API возвращает ошибку
notFound. -
В документации по ошибкам описана новая ошибка
forbidden, которая означает, что запрос не авторизован должным образом для запрошенного действия. -
Свойство
snippet.channelIdресурсаchannelудалено. Свойствоidресурса предоставляет то же значение.
30 января 2013 г.
В это обновление вошли следующие изменения.
-
На новой странице error (ошибка) перечислены ошибки, которые может возвращать API. На этой странице перечислены как общие ошибки, которые могут возникать при использовании разных методов API, так и ошибки, связанные с конкретными методами.
16 января 2013 г.
В это обновление вошли следующие изменения.
-
Примеры кода теперь доступны для методов и языков, указанных в списке ниже.
activities.insert– JavaplaylistItems.insert– PythonplaylistItems.list– Java, JavaScript, PHP, Python, Rubyplaylists.insert– Java, JavaScript, Python.search.list– Java, JavaScript, Python, Rubyvideos.insert– Java
-
Ресурс
activityтеперь может сообщать о действииchannelItem, которое происходит, когда YouTube добавляет видео на автоматически созданный канал. (Алгоритмы YouTube определяют темы, которые широко представлены на сайте, и автоматически создают каналы для этих тем.) -
Изменены следующие параметры
search.list:- Параметр
qбольше не используется в качестве фильтра, а значит… - Параметр
relatedToVideoпереименован вrelatedToVideoId. - Параметр
publishedзаменен двумя новыми параметрами,publishedAfterиpublishedBefore, которые описаны ниже.
- Параметр
-
Метод
search.listподдерживает следующие новые параметры:Название параметра Значение Описание channelIdstringВозвращает ресурсы, созданные указанным каналом. publishedAfterdatetimeВозвращает ресурсы, созданные после указанного времени. publishedBeforedatetimeВозвращает ресурсы, созданные до указанного времени. regionCodestringВозвращает ресурсы для указанной страны. videoCategoryIdstringФильтрация результатов поиска видео, чтобы в них включались только видео, связанные с указанной категорией видео. videoEmbeddablestringФильтровать результаты поиска видео, чтобы показывать только видео, которые можно воспроизвести во встроенном проигрывателе на веб-странице. Чтобы получить только видео, которые можно встроить, задайте для параметра значение true.videoSyndicatedstringФильтр, позволяющий включить в результаты поиска только видео, которые можно воспроизводить за пределами сайта YouTube.com. Чтобы получить только синдицированные видео, задайте для параметра значение true. -
В некоторых ресурсах API появились новые свойства. В таблице ниже перечислены ресурсы и их новые свойства.
Ресурс Название свойства Значение Описание activitycontentDetails.playlistItem.playlistItemIdstringИдентификатор объекта плейлиста, который YouTube присвоил объекту, чтобы однозначно идентифицировать его в плейлисте. activitycontentDetails.channelItemobjectОбъект, содержащий информацию о ресурсе, который был добавлен в канал. Это свойство присутствует, только если для типа snippet.typeвыбран вариантchannelItem.activitycontentDetails.channelItem.resourceIdobjectОбъект, который идентифицирует ресурс, добавленный на канал. Как и другие свойства resourceId, оно содержит свойствоkind, которое указывает тип ресурса, например видео или плейлист. Он также содержит ровно одно из нескольких свойств (videoId,playlistIdи т. д.), которое указывает идентификатор, уникальным образом определяющий этот ресурс.channelstatusobjectОбъект, содержащий информацию о настройках конфиденциальности канала. channelstatus.privacyStatusstringСтатус конфиденциальности канала. Допустимые значения: privateиpublic.playlistcontentDetailsobjectЭтот объект содержит метаданные о контенте плейлиста. playlistcontentDetails.itemCountunsigned integerКоличество видео в плейлисте. playlistplayerobjectЭтот объект содержит информацию, которая используется для воспроизведения плейлиста во встроенном проигрывателе. playlistplayer.embedHtmlstringТег <iframe>, который встраивает видеопроигрыватель, воспроизводящий плейлист.videorecordingDetailsobjectЭтот объект содержит информацию, которая идентифицирует или описывает место и время записи видео. videorecordingDetails.locationobjectЭтот объект содержит информацию о геолокации, связанную с видео. videorecordingDetails.location.latitudedoubleШирота в градусах. videorecordingDetails.location.longitudedoubleДолгота в градусах. videorecordingDetails.location.elevationdoubleВысота над поверхностью Земли в метрах. videorecordingDetails.locationDescriptionstringТекстовое описание места, где было записано видео. videorecordingDetails.recordingDatedatetimeДата и время записи видео. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ). -
В документации к некоторым методам API теперь указаны свойства, которые должны быть заданы в теле запроса или обновляются на основе значений в теле запроса. В таблице ниже перечислены эти методы, а также обязательные и изменяемые свойства.
Примечание. В документации по другим методам могут быть перечислены обязательные и изменяемые свойства.
Метод Свойства activities.insertОбязательные свойства: snippet.description
snippet.descriptioncontentDetails.bulletin.resourceId
playlists.updateОбязательные свойства: id
playlistItems.updateОбязательные свойства: id
videos.updateОбязательные свойства: id
-
API больше не сообщает об ошибке
playlistAlreadyExists, если вы пытаетесь создать или изменить плейлист, название которого совпадает с названием уже существующего плейлиста на том же канале. -
Некоторые методы API поддерживают новые типы ошибок. В таблице ниже указаны методы и новые ошибки, которые теперь поддерживаются.
Метод Тип ошибки Сведения об ошибке Описание guideCategories.listnotFoundnotFoundНе удалось найти категорию руководства, указанную в параметре id. Чтобы получить список допустимых значений, используйте метод guideCategories.list.playlistItems.deleteforbiddenplaylistItemsNotAccessibleЗапрос на удаление указанного объекта плейлиста не авторизован должным образом. videoCategories.listnotFoundvideoCategoryNotFoundНе удалось найти категорию видео, указанную в параметре id. Чтобы получить список допустимых значений, используйте метод videoCategories.list.