注: YouTube Content ID API は、YouTube コンテンツ パートナーによる使用を目的とした API であり、すべてのデベロッパーまたはすべての YouTube ユーザーが利用できるわけではありません。Google API Console にサービスの 1 つとして YouTube Content ID API が表示されていない場合は、YouTube ヘルプセンターで YouTube パートナー プログラムの詳細をご覧ください。
アセットラベルはアセットをカスタム カテゴリ別にまとめて整理するうえで役立ち、アセット ライブラリの整理が簡単になります。ラベルに基づいてアセットを検索できるため、特定のアセットのグループの更新が必要なユースケースを簡素化することもできます。
このガイドでは、YouTube Content ID API を使用して、ラベルに関連するさまざまな一般的な機能を実行する方法について説明します。このガイドのいくつかのセクションでは、各クエリをテストできるように、Google APIs Explorer にリンクしてデータを入力する例が含まれています。
アセットラベルを作成する
API では、次の 2 つの方法でアセットラベルを作成できます。
-
assetLabels.insert
メソッドを呼び出します。リクエストの本文は、labelName
プロパティに新しいラベルの一意の名前を指定するassetLabel
リソースです。同じ名前のラベルがすでに存在する場合、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 は以前にアセットに関連付けられていたラベルを削除します。
同じラベルを複数のアセットに関連付けることも、同じアセットに複数のラベルを割り当てることもできます。ラベルにはスペースを含めることができます。つまり、個々のラベルは複数の単語から成ります。使用できない文字は、山かっこ、カンマ、コロン、縦パイプ文字(|)です。各ラベルは 2 バイト以上、30 バイト以下にする必要があります。コンテンツ所有者ごとに、1 つのアセットに最大 30 個までラベルを適用できます。また、1 つのアセットのすべてのラベルの長さの合計は最大で 500 バイトまでです。
ラベルでアセットを検索する
特定のラベルまたはラベルのグループに関連付けられたアセットのリストを取得するには、assetSearch.list
メソッドを呼び出し、labels
クエリ パラメータを使用してアセットラベルのカンマ区切りのリストを指定します。
- デフォルトでは、API は指定されたすべてのアセットラベルを持つアセットのリストを返します。
- API リクエストで
includeAnyProvidedLabel
パラメータをtrue
に設定した場合、API は指定されたラベルの少なくとも 1 つに一致するアセットを返します。