На этой странице перечислены изменения в YouTube Data API (v3) и обновления документации.
2 ноября 2026 г.
Видео, загруженные с помощью метода videos.insert из неподтвержденных проектов API, больше не ограничиваются режимом личного просмотра. Это изменение отменяет правило, объявленное 28 июля 2020 года, согласно которому видео, загруженные из непроверенных проектов API, созданных после этой даты, ограничивались режимом частного просмотра до тех пор, пока проект не проходил аудит.
Если вы не укажете значение свойства status.privacyStatus в запросе videos.insert, то по умолчанию для загруженного видео будет установлен статус конфиденциальности public. Для некоторых загрузок по умолчанию может быть выбрана лицензия "private" в зависимости от настроек аккаунта автора, как описано в Справочном центре YouTube.
15 октября 2026 г.
В описание метода videos.list добавлено примечание о том, что свойства status.selfDeclaredMadeForKids и status.madeForKids обновляются, только если они указаны в запросе, и не переопределяются, если они опущены.
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 связано с прекращением поддержки страницы "В тренде" на YouTube.
26 марта 2025 г.
С 31 марта 2025 года просмотры Shorts будут считаться по-другому. Раньше просмотр Shorts засчитывался, если он длился определенное количество секунд. Теперь будут учитываться как первые, так и повторные просмотры Shorts без требований к минимальному времени просмотра. Подробнее…
С 31 марта 2025 года следующие поля в Data API будут возвращать число просмотров Shorts с учетом этого изменения:
channels.statistics.viewCountvideos.statistics.viewCount
30 октября 2024 г.
Теперь API позволяет выявлять видео, содержащие реалистичный измененный или синтетический (A/S) контент. Подробнее о правилах 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 г.
Примечание. Это объявление о прекращении поддержки.
Свойство brandingSettings.channel.moderateComments ресурса channel больше не поддерживается. 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, должны заполнить и отправить эту форму. Это позволит команде 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 касается проверки статуса "Для детей" у контента, который вы хотите встроить на свои сайты и в приложения. Вы должны знать, какие видео, встроенные в ваш API-клиент, предназначены для детей, и обрабатывать данные, собранные из встроенного проигрывателя, соответствующим образом. Поэтому, прежде чем встраивать контент в клиент API с помощью проигрывателей YouTube, вы должны проверять статус этого контента, используя сервис YouTube Data API.
В новом руководстве Как узнать, предназначен ли контент для детей рассказывается, как определить статус видео с помощью 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 была обновлена, чтобы лучше объяснить распространенные варианты использования каждого метода и предоставить динамические высококачественные примеры кода через виджет API 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. Кроме того, мы удалили инструкции для функций, которые больше не поддерживаются в v3 API, например для избранных видео.
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 г.
В это обновление вошли следующие изменения.
- Добавлено краткое руководство по YouTube Data API для iOS. В этом руководстве рассказывается, как использовать YouTube Data API в простом приложении для iOS, написанном на Objective-C или Swift.
- В интерактивный инструмент для работы с фрагментами кода в YouTube Data 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. -
Свойство
contentDetails.noteресурсаplaylistItemбыло обновлено. Теперь максимальная длина значения свойства составляет 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 года, мы подготовили несколько сопроводительных документов, которые помогут вам разобраться в правилах.
Полный набор новых документов описан в истории изменений обновленных Условий. В истории изменений также будут отражаться будущие изменения Обновленных условий и сопутствующих документов.
-
Прекращение поддержки 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для всех каналов.После 12 сентября 2016 года запросы на получение сведений о плейлистах (
playlists.list) для истории просмотра или плейлиста "Смотреть позже" будут возвращать пустой список. Запросы на получение элементов плейлиста (playlistItems.list) в любом из этих плейлистов также будут возвращать пустой список. Это касается как новых значений (HLиWL), так и идентификаторов плейлистов "История просмотра" и "Смотреть позже", которые уже могут храниться в вашем API-клиенте. -
После 12 сентября 2016 года объект
fileDetails.recordingLocationресурсаvideoи его дочерние свойства возвращаться не будут. Эти данные может получить только владелец видео, поскольку только он может получить родительский объект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 пикселей и высоту 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's 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 г.
Законы Европейского союза (ЕС) требуют, чтобы конечным пользователям из ЕС предоставлялась определенная информация и от них было получено согласие. В частности, это означает, что ваш сайт и клиенты API должны соответствовать Правилам в отношении согласия пользователей из ЕС (применительно к таким пользователям). Мы добавили уведомление об этом требовании в Условия использования 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, то результаты API сортируются по количеству одновременных зрителей, пока трансляции ещё идут. -
В параметр
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 Preferred. Раздел канала виден пользователям, которые выбрали один из этих регионов, а также пользователям, для которых один из этих регионов выбран автоматически. -
targeting.countries[]– список стран, в которых виден раздел канала. Каждое значение в списке – это код страны в формате ISO 3166-1 alpha-2.
-
-
Определение свойства
contentDetails.durationресурсаvideoисправлено, чтобы отразить, что значение может быть указано в часах, днях и т. д. -
В документацию по методам
channelSections.delete,playlistItems.delete,playlists.delete,subscriptions.deleteиvideos.deleteвнесены исправления. Теперь в ней указано, что в случае успеха эти методы возвращают код HTTP-ответа204(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.
В руководстве также перечислены функции, которые не поддерживались в версии 2, но поддерживаются в версии 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– удалить комментарий.
Обратите внимание, что новая область действия API
https://www.googleapis.com/auth/youtube.force-ssl, описанная в истории изменений за 2 апреля 2015 г., требуется для вызовов методовcomments.insert,comments.update,comments.markAsSpam,comments.setModerationStatus,comments.delete,commentThreads.insertиcommentThreads.update. -
-
В новом руководстве Подписка на push-уведомления рассказывается о том, как API поддерживает push-уведомления через PubSubHubBub – протокол публикации и подписки между серверами для ресурсов, доступных в интернете. Сервер обратного вызова PubSubHubBub может получать уведомления фида Atom, когда на канале происходит одно из следующих событий:
- загружает видео
- обновляет название видео;
- обновляет описание видео;
-
В руководство по переносу также добавлена информация о поддержке push-уведомлений. Однако, поскольку API версии 2 поддерживал множество других типов push-уведомлений, которые не поддерживаются в API версии 3, упоминание о поддержке PubSubHubBub по-прежнему указано в разделе Устаревшие этого руководства.
-
Новая область действия
https://www.googleapis.com/auth/youtube.force-sslтеперь поддерживается всеми методами 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. Фактически эти две области действия идентичны, поскольку сервер YouTube API доступен только через конечную точку 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и задайте значениеtrueдля параметраhome.В ответе 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 использовался тег
<yt:location>, который позволял определить местоположение пользователя, указанное в общедоступном профиле канала YouTube. Некоторые разработчики использовали это поле, чтобы связать канал с определенной страной, но данные в нем не всегда подходили для этой цели. -
Настройка и получение тегов разработчика. В 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 v2 для описания фильмов, трейлеров, телешоу, сезонов и серий.
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В альбоме "Фоновые изображения канала" слишком много изображений. Владельцу канала нужно перейти на страницу 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 г.
В это обновление вошли следующие изменения.
-
Свойство
invideoPromotion.items[]ресурсаchannelбыло обновлено. Теперь в нем указано, что обычно на канале можно продвигать только один объект. Если вы попытаетесь вставить слишком много продвигаемых объектов, 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 поддерживает метод, позволяющий получить список поддерживаемых языков приложения. Поддерживаемые языки можно использовать в качестве значения параметра
hlпри вызове методов API, таких какvideoCategories.listиguideCategories.list. -
Новый ресурс
i18nRegionопределяет географический регион, который пользователь YouTube может выбрать в качестве предпочтительного региона контента. Регион контента также может называться языковым стандартом контента. На сайте YouTube регион контента может выбираться автоматически на основе эвристических методов, например домена YouTube или IP-адреса пользователя. Кроме того, пользователь может вручную выбрать нужный регион контента в нижнем колонтитуле сайта YouTube.API поддерживает метод, позволяющий получить список поддерживаемых регионов. Поддерживаемые коды регионов можно использовать в качестве значения параметра
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 версии 3 исключены из действия этих правил.
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(Go)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, посвященных связанным сайтам и сайтам продавцов.
Добавляя рекламные ссылки, вы соглашаетесь с тем, что они не будут использоваться для перенаправления трафика на неавторизованные сайты и что они будут соответствовать правилам AdWords, правилам размещения рекламы на 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 значение "unrated" часто используется для обозначения полных версий фильмов, сокращенные версии которых получили официальное возрастное ограничение. -
Новое свойство
contentDetails.contentRating.ytRatingресурсаvideoпозволяет идентифицировать контент с ограничениями по возрасту. Если видео содержит контент, не предназначенный для зрителей младше 18 лет, свойство будет иметь значениеytAgeRestricted. Если свойство отсутствует или его значение не указано, значит контент не был идентифицирован как имеющий возрастные ограничения. -
Параметр
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. Этот параметр позволяет партнерам пройти аутентификацию один раз и получить доступ к данным всех своих видео и каналов, не вводя учетные данные для каждого канала по отдельности.
В частности, теперь параметр позволяет партнеру добавлять, обновлять и удалять видео на любом из своих каналов 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. Вместо этого мы предоставляем список YouTube API, на которые распространяются правила прекращения поддержки.
8 мая 2013 г.
В это обновление вошли следующие изменения.
-
Ресурсы channel теперь поддерживают объект
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.kmrbRatingMexicoГенеральный директорат по радио, телевидению и кинематографии (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 г.
В это обновление вошли следующие изменения.
-
На новой странице ошибок перечислены ошибки, которые может возвращать API. На странице приведены как общие ошибки, которые могут возникать при использовании разных методов API, так и ошибки, связанные с конкретными методами.
16 января 2013 г.
В это обновление вошли следующие изменения.
-
Примеры кода теперь доступны для методов и языков, указанных в списке ниже.
activities.insert– JavaplaylistItems.insert– PythonplaylistItems.list– Java, JavaScript, PHP, Python, Ruby.playlists.insert– Java, JavaScript, Python;search.list– Java, JavaScript, Python, Ruby;videos.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.