Реализация: плейлисты

В следующих примерах показано, как использовать API данных YouTube (v3) для выполнения функций, связанных со списками воспроизведения и их элементами.

Получить плейлисты текущего пользователя

Вызовите метод playlists.list , чтобы получить списки воспроизведения текущего пользователя, прошедшего проверку подлинности. В своем запросе установите для параметра mine значение true . Обратите внимание, что запрос, использующий параметр mine , должен быть авторизован с использованием OAuth 2.0.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.list?
        part=snippet,contentDetails
        &mine=true

Получить плейлисты пользователя

В этом примере извлекаются списки воспроизведения, созданные определенным каналом. Пример состоит из двух шагов:

Получить информацию о конкретном плейлисте

Чтобы получить информацию об одном или нескольких конкретных списках воспроизведения, вызовите метод playlists.list и задайте для параметра id список идентификаторов списков воспроизведения YouTube, разделенных запятыми, которые идентифицируют нужные ресурсы. Распространенным вариантом использования этой функции является запрос на получение дополнительной информации о группе списков воспроизведения, возвращенных в наборе результатов поиска. Например, вы можете получить количество элементов в каждом списке воспроизведения.

Приведенный ниже запрос вызывает метод playlists.list для получения количества элементов в двух списках воспроизведения, соответствующих термину запроса "GoogleDevelopers". Эта информация находится в свойстве contentDetails.itemCount ресурса playlist , поэтому запрос устанавливает значение параметра part равным contentDetails .

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.list?
        part=contentDetails
        &id=PLOU2XLYxmsIIM9h1Ybw2DuRw6o2fkNMeR,PLyYlLs02rgBYRWBzYpoHz7m2SE8mEZ68w

Добавить плейлист

В этом примере вызывается метод playlists.insert для создания частного списка воспроизведения на канале пользователя, прошедшего проверку подлинности. Любой запрос API к этому методу должен быть авторизован с использованием OAuth 2.0.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.insert?
        part=snippet,status

Ссылка на обозреватель API также устанавливает параметр, указывающий тело запроса API. Тело запроса содержит ресурс playlist , который определяет такую ​​информацию, как название списка воспроизведения, описание и статус конфиденциальности. В этом примере тело запроса:

{
  "snippet": {
    "title": "New playlist",
    "description": "New playlist description"
  },
  "status": {
    "privacyStatus": "private"
  }
}

Связанные примеры кода: Java , JavaScript , .NET , PHP , Python

Обновить плейлист

В этом примере статус конфиденциальности плейлиста изменяется с private на public . Пример состоит из двух шагов:

  • Шаг 1. Получите идентификатор плейлиста.

    Вызовите метод playlist.list , чтобы получить списки воспроизведения на канале текущего пользователя, прошедшего проверку подлинности. Приведенный выше пример запроса на получение списков воспроизведения текущего пользователя демонстрирует этот запрос. Приложение, вызывающее API, может обработать ответ API для отображения списка списков воспроизведения, используя идентификатор каждого списка воспроизведения в качестве ключа.

  • Шаг 2. Обновление плейлиста

    Вызовите метод playlists.update , чтобы изменить конкретный список воспроизведения. Для этого метода требуется действительный токен авторизации OAuth 2.0.

    Текст запроса должен включать часть snippet ресурса playlist , поскольку при вызове этого метода требуется свойство snippet.title . Кроме того, если обновляемый ресурс плейлиста указывает значения для свойств snippet.description или snippet.tags , эти значения необходимо повторно указать в запросе на обновление, иначе они будут удалены.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.update?
            part=snippet,status

    Как и в приведенном выше примере для добавления списка воспроизведения, ссылка на обозреватель API задает параметр, указывающий тело запроса API. Тело запроса содержит ресурс playlist , который определяет такую ​​информацию, как название списка воспроизведения, описание и статус конфиденциальности. В этом примере используется следующее тело запроса:

    {
      "id": "PLAYLIST_ID",
      "snippet": {
        "title": "New playlist",
        "description": "New playlist description"
      },
      "status": {
        "privacyStatus": "public"
      }
    }

    Примечание. Если вы тестируете этот запрос в обозревателе API, вам потребуется заменить действительный идентификатор списка воспроизведения в теле ресурса. Чтобы получить идентификатор плейлиста, мы рекомендуем сначала выполнить показанный выше запрос на добавление плейлиста . Извлеките идентификатор списка воспроизведения из ответа API и используйте это значение для списка воспроизведения, который вы хотите обновить. Название и описание списка воспроизведения, используемые в этом примере, такие же, как и в этом примере.

Добавить элемент плейлиста

В этом примере элемент добавляется в список воспроизведения. Этот запрос должен быть авторизован с использованием OAuth 2.0. Этот пример состоит из двух шагов:

  • Шаг 1. Получите соответствующий идентификатор плейлиста.

    Вызовите метод playlist.list , чтобы получить списки воспроизведения на канале текущего пользователя, прошедшего проверку подлинности. Приведенный выше пример запроса на получение списков воспроизведения текущего пользователя демонстрирует этот запрос. Приложение, вызывающее API, может обработать ответ API для отображения списка списков воспроизведения, используя идентификатор каждого списка воспроизведения в качестве ключа.

  • Шаг 2. Добавьте видео в плейлист.

    Вызовите метод playlistItems.insert , чтобы добавить видео в список воспроизведения. Этот запрос должен быть авторизован с использованием OAuth 2.0. Тело запроса представляет собой ресурс playlistItem , в котором указаны как минимум следующие значения:

    • snippet.playlistId определяет список воспроизведения, в который вы добавляете видео. Это идентификатор плейлиста, который вы получили на шаге 1.
    • snippet.resourceId.kind содержит значение youtube#video .
    • snippet.resourceId.videoId идентифицирует видео, которое вы добавляете в список воспроизведения. Значением свойства является уникальный идентификатор видео YouTube.

    Приведенный ниже запрос API добавляет видео в список воспроизведения. Тело запроса:

    {
      "snippet": {
        "playlistId": "PLAYLIST_ID",
        "resourceId": {
          "kind": "youtube#video",
          "videoId": "VIDEO_ID"
        }
      }
    }

    Чтобы выполнить запрос в обозревателе API, необходимо установить значения для свойств snippet.playlistId и snippet.resourceId.videoId .

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.insert?
            part=snippet

    Примечание. В документации к методу playlistItems.insert указаны другие значения свойств, которые можно установить при добавлении элемента списка воспроизведения.

Обновить элемент плейлиста

В этом примере элемент списка воспроизведения обновляется, чтобы он стал первым элементом в списке воспроизведения. Этот запрос должен быть авторизован с использованием OAuth 2.0. Этот пример состоит из трех шагов:

  • Шаг 1. Получите соответствующий идентификатор плейлиста.

    Вызовите метод playlist.list , чтобы получить списки воспроизведения на канале текущего пользователя, прошедшего проверку подлинности. Приведенный выше пример запроса на получение списков воспроизведения текущего пользователя демонстрирует этот запрос. Приложение, вызывающее API, может обработать ответ API для отображения списка списков воспроизведения, используя идентификатор каждого списка воспроизведения в качестве ключа.

  • Шаг 2: Получите элементы в выбранном плейлисте

    Вызовите метод playlistItems.list , чтобы получить список видео в выбранном списке воспроизведения. Задайте для параметра playlistId значение идентификатора списка воспроизведения, полученного на шаге 1.

    Каждый ресурс в ответе API содержит свойство id , которое идентифицирует идентификатор элемента списка воспроизведения, который однозначно идентифицирует этот элемент. Вы будете использовать это значение для удаления элемента из списка на следующем шаге.

  • Шаг 3: Обновите выбранный элемент плейлиста

    Вызовите метод playlistItems.update , чтобы изменить положение видео в списке воспроизведения. Установите для параметра part значение snippet . Тело запроса должно быть ресурсом playlistItem , который устанавливает как минимум следующие значения:

    • Задайте для свойства id идентификатор элемента списка воспроизведения, полученный на шаге 2.
    • Задайте для свойства snippet.playlistId идентификатор плейлиста, полученный на шаге 1.
    • Задайте для свойства snippet.resourceId.kind значение youtube#video .
    • Задайте для свойства snippet.resourceId.videoId идентификатор видео, который однозначно идентифицирует видео, включенное в список воспроизведения.
    • Задайте для свойства snippet.position значение 0 или любую позицию, в которой вы хотите, чтобы элемент отображался (используя индекс, основанный на 0).

    Приведенный ниже запрос API обновляет элемент плейлиста, чтобы он стал первым элементом в плейлисте. Тело запроса:

    {
      "id": "PLAYLIST_ITEM_ID",
      "snippet": {
        "playlistId": "PLAYLIST_ID",
        "resourceId": {
          "kind": "youtube#video",
          "videoId": "VIDEO_ID"
        },
        "position": 0
      }
    }

    Чтобы выполнить запрос в проводнике API, вам необходимо установить значения для свойств id , snippet.playlistId и snippet.resourceId.videoId .

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.update?
            part=snippet

Удалить элемент плейлиста

В этом примере удаляется видео из плейлиста. Этот запрос должен быть авторизован с использованием OAuth 2.0. Этот пример состоит из трех шагов. Первые два шага такие же, как в приведенном выше примере для обновления элемента плейлиста .

После выполнения этих шагов вызовите метод playlistItems.delete , чтобы удалить видео из списка воспроизведения. Задайте для параметра id запроса идентификатор элемента плейлиста для элемента, который вы хотите удалить. Этот запрос должен быть авторизован с использованием OAuth 2.0.

Обратите внимание, что идентификатор элемента плейлиста, используемый для идентификации видео в плейлисте, отличается от идентификатора видео YouTube, который однозначно идентифицирует видео. Идентификатор элемента списка воспроизведения идентифицирует видео как элемент определенного списка воспроизведения.

Чтобы выполнить запрос в обозревателе API, вам необходимо установить значение свойства id .

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.delete?
        id=PLAYLIST_ITEM_ID

Удалить плейлист

В этом примере удаляется список воспроизведения. Пример состоит из двух шагов:

  • Шаг 1. Получите идентификатор плейлиста.

    Вызовите метод playlist.list , чтобы получить списки воспроизведения на канале текущего пользователя, прошедшего проверку подлинности. Приведенный выше пример запроса на получение списков воспроизведения текущего пользователя демонстрирует этот запрос. Приложение, вызывающее API, может обработать ответ API для отображения списка списков воспроизведения, используя идентификатор каждого списка воспроизведения в качестве ключа.

  • Шаг 2. Удаление плейлиста

    Вызовите метод playlists.delete , чтобы удалить определенный список воспроизведения. В запросе параметр id указывает идентификатор удаляемого списка воспроизведения. Для этого метода требуется действительный токен авторизации OAuth 2.0. Если вы тестируете этот запрос в обозревателе API, вам потребуется заменить значение параметра id допустимым идентификатором плейлиста.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlists.delete?
            id=PLAYLIST_ID

    Примечание. Если вы тестируете этот запрос в обозревателе API, вам потребуется заменить значение параметра id допустимым идентификатором плейлиста. Чтобы получить идентификатор плейлиста, мы рекомендуем сначала выполнить показанный выше запрос на добавление плейлиста . Извлеките идентификатор плейлиста из ответа API и используйте это значение для плейлиста, который хотите удалить.