実装: 再生リスト

次の例は、YouTube Data API(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

ユーザーの再生リストを取得する

この例では、特定のチャンネルによって作成された再生リストを取得します。この例では、次の 2 つのステップを行います。

特定の再生リストに関する情報を取得する

1 つ以上の特定の再生リストに関する情報を取得するには、playlists.list メソッドを呼び出し、id パラメータを、目的のリソースを識別する YouTube 再生リスト ID のカンマ区切りのリストに設定します。この機能の一般的なユースケースは、検索結果のセットで返された再生リストのグループに関する追加情報を取得するリクエストです。たとえば、各再生リスト内のアイテム数を取得できます。

次のリクエストは、playlists.list メソッドを呼び出して、クエリ語句「GoogleDevelopers」に一致する 2 つの再生リスト内のアイテム数を取得します。この情報は playlist リソースの contentDetails.itemCount プロパティに含まれているため、リクエストは 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 Explorer へのリンクでは、API リクエストの本文を指定するパラメータも設定されます。リクエストの本文には、再生リストのタイトル、説明、プライバシー ステータスなどの情報を定義する playlist リソースが含まれています。この例では、リクエスト本文は次のようになります。

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

次の例では、新しい再生リストをポッドキャスト番組としてマークします。

{
  "snippet": {
    "title": "New playlist",
    "description": "New playlist description"
  },
  "status": {
    "podcastStatus": "enabled"
  }
}

関連するコードサンプル: JavaJavaScript.NETPHPPython

再生リストを更新する

この例では、再生リストのプライバシー ステータスを private から public に更新します。この例では、次の 2 つのステップを行います。

  • ステップ 1: 再生リスト ID を取得する

    playlists.list メソッドを呼び出して、現在認証されているユーザーのチャンネルの再生リストを取得します。上記の現在のユーザーのプレイリストを取得するサンプル リクエストは、このリクエストを示しています。API を呼び出すアプリケーションは、API レスポンスを処理して、各プレイリストの ID をキーとしてプレイリストのリストを表示できます。

  • ステップ 2: プレイリストの更新

    playlists.update メソッドを呼び出して、特定のプレイリストを変更します。このメソッドでは、有効な OAuth 2.0 認証トークンが必要です。

    このメソッドを呼び出すときに snippet.title プロパティが必要となるため、リクエスト本文に playlist リソースの snippet 部分を含める必要があります。また、更新する再生リスト リソースで snippet.description プロパティまたは snippet.tags プロパティの値が指定されている場合は、更新リクエストでその値を再度指定する必要があります。指定しない場合、値は削除されます。

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

    上記のプレイリストの追加の例と同様に、API Explorer へのリンクは、API リクエストの本文を指定するパラメータを設定します。リクエストの本文には、再生リストのタイトル、説明、プライバシー ステータスなどの情報を定義する playlist リソースが含まれています。この例では、次のリクエスト本文を使用します。

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

    次の例では、再生リストをポッドキャスト番組としてマークします。

    {
      "id": "PLAYLIST_ID",
      "snippet": {
        "title": "New playlist",
        "description": "New playlist description"
      },
      "status": {
        "podcastStatus": "enabled"
      }
    }

    注: API Explorer でこのクエリをテストする場合は、リソース本文に有効な再生リスト ID を指定する必要があります。再生リスト ID を取得するには、まず上記の再生リストの追加のリクエストを実行することをおすすめします。API レスポンスからプレイリスト ID を抽出し、更新するプレイリストにその値を使用します。この例で使用しているプレイリストのタイトルと説明は、その例で使用しているものと同じです。

再生リストのアイテムを追加する

この例では、アイテムを再生リストに追加します。このリクエストは OAuth 2.0 を使用して承認する必要があります。この例には次の 2 つの手順があります。

  • ステップ 1: 適切なプレイリスト ID を取得する

    playlists.list メソッドを呼び出して、現在認証されているユーザーのチャンネルの再生リストを取得します。上記の現在のユーザーのプレイリストを取得するサンプル リクエストは、このリクエストを示しています。API を呼び出すアプリケーションは、API レスポンスを処理して、各プレイリストの ID をキーとしてプレイリストのリストを表示できます。

  • ステップ 2: 再生リストに動画を追加する

    playlistItems.insert メソッドを呼び出して、動画を再生リストに追加します。このリクエストは OAuth 2.0 を使用して承認する必要があります。リクエストの本文は、少なくとも次の値を指定する playlistItem リソースです。

    • snippet.playlistId は、動画を追加する再生リストを識別します。これは、手順 1 で取得した再生リスト ID です。
    • snippet.resourceId.kind には値 youtube#video が含まれています。
    • snippet.resourceId.videoId は、再生リストに追加する動画を識別します。プロパティ値は、一意の YouTube 動画 ID です。

    次の API リクエストは、動画を再生リストに追加します。リクエストの本文は次のようになります。

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

    API Explorer でリクエストを完了するには、snippet.playlistId プロパティと snippet.resourceId.videoId プロパティの値を設定する必要があります。

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

    注: playlistItems.insert メソッドのドキュメントでは、プレイリスト アイテムの追加時に設定できるその他のプロパティ値について説明しています。

再生リストの画像を追加する

v3 API の playlistImages.insert メソッドを使用して、カスタム サムネイル イメージをアップロードし、プレイリストに設定できます。リクエストの playlistId パラメータの値は、サムネイルが使用される再生リストを識別します。

このクエリは、API Explorer を使用してテストできません。API Explorer ではメディア ファイルのアップロード機能がサポートされていないためです。このメソッドではメディア ファイルのアップロードが必要です。

再生リストのアイテムを更新する

この例では、プレイリスト内の最初のアイテムになるようにプレイリスト アイテムを更新します。このリクエストは OAuth 2.0 を使用して承認する必要があります。この例では、次の 3 つの手順を行います。

  • ステップ 1: 適切なプレイリスト ID を取得する

    playlists.list メソッドを呼び出して、現在認証されているユーザーのチャンネルの再生リストを取得します。上記の現在のユーザーのプレイリストを取得するサンプル リクエストは、このリクエストを示しています。API を呼び出すアプリケーションは、API レスポンスを処理して、各プレイリストの ID をキーとしてプレイリストのリストを表示できます。

  • ステップ 2: 選択した再生リスト内のアイテムを取得する

    playlistItems.list メソッドを呼び出して、選択した再生リスト内の動画のリストを取得します。playlistId パラメータの値を、手順 1 で取得した再生リスト ID に設定します。

    API レスポンスの各リソースには id プロパティが含まれており、そのアイテムを一意に識別する再生リスト アイテム ID を識別します。この値は、次のステップでリストからアイテムを削除する際に使用します。

  • ステップ 3: 選択した再生リストアイテムを更新する

    playlistItems.update メソッドを呼び出して、再生リスト内の動画の位置を変更します。part パラメータの値を snippet に設定します。リクエストの本文は、少なくとも次の値を設定する playlistItem リソースである必要があります。

    • id プロパティを、手順 2 で取得した再生リストのアイテム ID に設定します。
    • snippet.playlistId プロパティを、手順 1 で取得した再生リスト ID に設定します。
    • snippet.resourceId.kind プロパティを youtube#video に設定します。
    • snippet.resourceId.videoId プロパティを、再生リストに含まれる動画を一意に識別する動画 ID に設定します。
    • snippet.position プロパティを 0 に設定するか、アイテムを表示する位置(0 ベースのインデックスを使用)に設定します。

    次の API リクエストは、再生リスト内のアイテムを更新して、再生リスト内の最初のアイテムにします。リクエストの本文は次のようになります。

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

    API Explorer でリクエストを完了するには、idsnippet.playlistIdsnippet.resourceId.videoId プロパティに値を設定する必要があります。

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

再生リストの画像を更新する

v3 API の playlistImages.update メソッドを使用して、再生リストのサムネイル画像を更新できます。リクエストの playlistId パラメータの値は、サムネイルが使用される再生リストを識別します。

このクエリは、API Explorer を使用してテストできません。API Explorer ではメディア ファイルのアップロード機能がサポートされていないためです。このメソッドではメディア ファイルのアップロードが必要です。

再生リストのアイテムを削除する

この例では、再生リストから動画を削除します。このリクエストは OAuth 2.0 を使用して承認する必要があります。この例では、次の 3 つの手順を行います。最初の 2 つの手順は、上記の再生リストのアイテムを更新する例と同じです。

これらの手順を完了したら、playlistItems.delete メソッドを呼び出して再生リストから動画を削除します。リクエストの id パラメータを、削除するアイテムの再生リスト アイテム ID に設定します。このリクエストは OAuth 2.0 を使用して承認する必要があります。

再生リスト内の動画を識別するために使用される再生リスト アイテム ID は、動画を一意に識別する YouTube 動画 ID とは異なります。再生リスト アイテム ID は、特定の再生リスト内のアイテムとして動画を識別します。

API Explorer でリクエストを完了するには、id プロパティの値を設定する必要があります。

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

再生リストの画像を削除する

この例では、再生リストの画像を削除します。この例では、次の 2 つのステップを行います。

  • ステップ 1: 再生リストを取得する

    playlists.list メソッドを呼び出して、現在認証されているユーザーのチャンネルの再生リストを取得します。上記の現在のユーザーのプレイリストを取得するサンプル リクエストは、このリクエストを示しています。API を呼び出すアプリケーションは、API レスポンスを処理して、各プレイリストの ID をキーとしてプレイリストのリストを表示できます。

  • ステップ 2: 再生リストの画像 ID を取得する

    playlistImages.list メソッドを呼び出して、再生リストのサムネイル画像を取得します。変更するプレイリストのプレイリスト ID を使用します。

  • ステップ 3: 再生リストの画像を削除する

    playlistImages.delete メソッドを呼び出して、特定の再生リストの画像を削除します。リクエストの id パラメータには、削除する再生リスト画像の ID を指定します。このメソッドでは、有効な OAuth 2.0 認証トークンが必要です。API Explorer でこのクエリをテストする場合は、id パラメータ値を有効な再生リスト ID に置き換える必要があります。

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

    注: API Explorer でこのクエリをテストする場合は、id パラメータ値を有効な再生リストの画像 ID に置き換える必要があります。

再生リストを削除する

この例では、再生リストを削除します。この例では、次の 2 つのステップを行います。

  • ステップ 1: 再生リスト ID を取得する

    playlists.list メソッドを呼び出して、現在認証されているユーザーのチャンネルの再生リストを取得します。上記の現在のユーザーのプレイリストを取得するサンプル リクエストは、このリクエストを示しています。API を呼び出すアプリケーションは、API レスポンスを処理して、各プレイリストの ID をキーとしてプレイリストのリストを表示できます。

  • ステップ 2: 再生リストを削除する

    playlists.delete メソッドを呼び出して、特定の再生リストを削除します。リクエストの id パラメータには、削除する再生リストの再生リスト ID を指定します。このメソッドでは、有効な OAuth 2.0 認証トークンが必要です。API Explorer でこのクエリをテストする場合は、id パラメータ値を有効な再生リスト ID に置き換える必要があります。

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

    注: API Explorer でこのクエリをテストする場合は、id パラメータの値を有効な再生リスト ID に置き換える必要があります。再生リスト ID を取得するには、まず上記の再生リストの追加のリクエストを実行することをおすすめします。API レスポンスからプレイリスト ID を抽出し、その値を削除するプレイリストに使用します。