アセットラベルを使用する

注: YouTube Content ID API は、YouTube コンテンツ パートナーによる使用を目的とした API であり、すべてのデベロッパーまたはすべての YouTube ユーザーがアクセスすることはできません。Google API Console に YouTube Content ID API がサービスとして表示されない場合は、YouTube ヘルプセンターで YouTube パートナー プログラムの詳細をご覧ください。

アセットラベルはアセットをカスタム カテゴリ別にまとめて整理するうえで役立ち、アセット ライブラリの整理が簡単になります。ラベルに基づいてアセットを検索できます。これにより、特定のアセット グループを更新する必要があるユースケースを簡素化することもできます。

このガイドでは、YouTube Content ID API を使用して、ラベルに関連付けられたいくつかの一般的な機能を実行する方法について説明します。このガイドのいくつかのセクションには、各クエリをテストできるように、Google APIs Explorer にリンクしてデータが表示される例が含まれています。

アセットラベルを作成する

この API では、次の 2 つの方法でアセットラベルを作成できます。

  • assetLabels.insert メソッドを呼び出します。リクエストの本文は assetLabel リソースであり、その中の labelName プロパティは新しいラベルの一意の名前を指定します。同じ名前のラベルがすでに存在する場合、API は 409 (Conflict) HTTP レスポンス コードを返します。

    以下のクエリは、assetLabels.insert メソッドを呼び出して、Explorer Test という名前の新しいラベルを作成します。サンプル リクエストの本文は次のとおりです。

    {
      "labelName": "Explorer Test"
    }

    このリクエストではクエリ パラメータは設定されません。ただし、Google アカウントが複数のコンテンツ所有者アカウントに関連付けられている場合は、onBehalfOfContentOwner パラメータの値も設定する必要があります。

    [no parameters set]
  • assets.update メソッドを呼び出して、アセットのラベルを更新します。リクエストで、asset リソースの label[] プロパティをアセットに関連付けられているラベルのリストに設定します。API は、以前に assetLabel リソースとして明示的に作成されていないリスト内のラベルに対して新しいアセットラベルを自動的に作成します。

コンテンツ所有者のアセットラベルを一覧表示する

コンテンツ所有者のアセットラベルのリストを取得するには、assetLabels.list メソッドを呼び出します。

  • デフォルトでは、API はコンテンツ所有者のすべてのアセットラベルを返します。
  • labelPrefix クエリ パラメータの値を設定した場合、API は指定された文字列で始まるコンテンツ所有者のアセットラベルのみを返します。

次のクエリは、assetLabels.list メソッドを呼び出して、コンテンツ所有者のすべてのラベルを取得します。ただし、Google アカウントが複数のコンテンツ所有者アカウントに関連付けられている場合は、onBehalfOfContentOwner パラメータの値を設定する必要があります。値を設定していない場合、リクエストは 400 (Bad Request) エラーを返します。

[no parameters set]

次のクエリは同じメソッドを呼び出しますが、labelPrefix パラメータの値を news に設定します。そのため、API から返されるラベルは、その文字列で始まるラベルのみです。

labelPrefix=news

アセットのラベルを更新する

アセットのラベルを更新するには、assets.update メソッドを呼び出すときに label[] プロパティの値を設定します。アセットを更新すると、以前のラベルのリストが削除され、API リクエストで送信されたリストに置き換えられます。そのため、以前のラベルリストを保持する場合は、assets.list メソッドを使用して元のラベルリストを取得し、label[] プロパティの値を変更する必要があります。プロパティの値が空の場合、API は以前にアセットに関連付けられていたラベルを削除します。

同じラベルを複数のアセットに関連付けたり、同じアセットに複数のラベルを割り当てることもできます。ラベルにはスペースを含めることができます。つまり、1 つのラベルは 2 単語以上です。使用できない文字は、角括弧(<>)、カンマ(,)、コロン(:)、縦線(|)です。各ラベルは 2 バイト以上、30 バイト以下にする必要があります。コンテンツ所有者ごとに、1 つのアセットに最大 30 個までラベルを適用できます。また、1 つのアセットのすべてのラベルの長さの合計は最大で 500 バイトまでです。

ラベルでアセットを検索する

ラベルまたはラベルのグループに関連付けられているアセットのリストを取得するには、assetSearch.list メソッドを呼び出し、labels クエリ パラメータを使用して、アセットラベルのカンマ区切りリストを指定します。

  • デフォルトでは、API は指定されたすべてのアセットラベルを持つアセットのリストを返します。
  • API リクエストで includeAnyProvidedLabel パラメータが true に設定されている場合、API は指定されたラベルの少なくとも 1 つに一致するアセットを返します。