実装: 再生リスト

次の例は、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 つのステップがあります。

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

特定の再生リストの情報を取得するには、playlists.list メソッドを呼び出し、目的のリソースを識別する YouTube 再生リスト ID のカンマ区切りのリストに 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 に設定します。
    • 再生リストに含まれる動画を一意に識別する動画 ID を 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 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 を抽出し、削除する再生リストでその値を使用します。