- 読み取りエンドポイントには
context-targeting:readスコープ、書き込みエンドポイントにはcontext-targeting:writeスコープが必要です。事前準備を参照してください。 - プロジェクトはAPIキーで決まるため、パスにプロジェクトIDは含まれません。
- 各エンドポイントには、そのエンドポイント固有のエラーのみを記載しています。すべてのエンドポイントに共通するエラーは、エラーコードを参照してください。
ターゲティングオブジェクト
一覧取得、取得、作成、名前変更のエンドポイントは、ターゲティングを次の形式で返します。削除エンドポイントは_idのみを返します。APIのフィールドでは、オプションをcategoriesと呼びます。
categoriesとsyncedAtは、すべてのレスポンスに含まれるわけではありません。
syncedAtは、ターゲティングの最初の読み込みが完了するまで省略されます。コンテキストIDの変更、オプションの追加、オプションの移動や切り離しを行った後も、通常は次の読み込みが完了するまで省略されます。
変更が読み込まれたかどうかは、変更が成功した時刻と
syncedAtを比べて確認してください。syncedAtの有無では判断しないでください。変更が反映されるタイミングを参照してください。ターゲティング一覧の取得
プロジェクト内のすべてのコンテキストターゲティングを返します。オーディエンスターゲティングは含まれず、一覧はページ分割されません。リクエスト
context-targeting:readスコープが必要です。
クエリパラメータ
リクエスト例
レスポンス例
200で、ターゲティングオブジェクトの配列を返します。
ターゲティングの取得
コンテキストターゲティングを1件返します。リクエスト
context-targeting:readスコープが必要です。
パスパラメータ
クエリパラメータ
リクエスト例
レスポンス例
200で、ターゲティングオブジェクトを返します。
ターゲティングの作成
コンテキストターゲティングを作成します。同じリクエストでオプションも作成できます。リクエスト
context-targeting:writeスコープが必要です。
リクエストボディ
categoriesの各項目には、次のフィールドを指定します。
- 1回のリクエストに含められるコンテキストIDは、下位オプションの分を含めて合計10,000個までです。
- IDはすべてサーバーが生成します。
_idを含むリクエストは400で失敗します。 categoriesの項目にはparentを指定できません。指定したリクエストは400で失敗します。既存のオプショングループにオプションを追加する方法は、オプショングループへのオプション追加を参照してください。- 100個を超えるオプションを作成するには、まずターゲティングを作成してから、オプションの一括追加を使用してください。
リクエスト例
レスポンス例
201で、オプションを含む新しいターゲティングオブジェクトを返します。
_idを保存してください。後でターゲティングを変更するときに必要です。
エラー
名前がすでに使われている場合のレスポンスは次のとおりです。
ターゲティング名の変更
ターゲティングの名前を変更します。オプションとコンテキストIDは変更されません。リクエスト
context-targeting:writeスコープが必要です。
パスパラメータ
リクエストボディ
リクエスト例
レスポンス例
200で、名前を変更したターゲティングオブジェクトをcategoriesなしで返します。オプションを取得するには、ターゲティングの取得またはオプション一覧の取得を使用してください。
ターゲティングの削除
ターゲティングと、そのすべてのオプション(オプショングループと下位オプションを含む)を削除します。リクエスト
context-targeting:writeスコープが必要です。
パスパラメータ
リクエスト例
レスポンス例
200で、削除したターゲティングのIDのみを返します。
一括操作
1回のリクエストで、最大100件のターゲティングを作成、名前変更、削除できます。- まず、リクエスト全体が検査されます。検査の対象は、項目数(1〜100件)、各フィールドの形式、リクエストあたりの合計です。検査に失敗すると、リクエスト全体が
400で失敗し、何も反映されません。 - プロジェクトで別のAPI書き込みを処理中の場合、リクエスト全体が
409 CONTEXT_TARGETING_WRITE_IN_PROGRESSで失敗し、何も反映されないことがあります。同時書き込みを参照してください。 - それ以外の場合、すべての項目が失敗したときでも、レスポンスは
200で、項目ごとの結果が含まれます。一部の項目が成功し、ほかの項目が失敗することもあるため、項目ごとにsuccessを確認してください。
作成と削除のリクエストでは、検査を通過した項目がまとめて反映されます。予期しないエラーが発生した場合は、リクエストの内容は何も反映されません。このとき、検査で失敗した項目にはそのエラーが返され、それ以外の項目は
500 UNCATCHEDで失敗します。同じリクエストを再送してください。名前変更のリクエストでは、各項目がリクエストの順序どおりに1件ずつ反映されます。詳しくは一括操作のレスポンスを参照してください。
ターゲティングの一括作成
オプションの有無にかかわらず、最大100件のターゲティングを作成します。リクエスト
context-targeting:writeスコープが必要です。
リクエストボディ
すべての項目を合わせて、1回のリクエストに含められるオプションは下位オプションを含めて100個まで、コンテキストIDは10,000個までです。
リクエスト例
レスポンス例
成功した項目のdataは、オプションを含む新しいターゲティングオブジェクトです。この例では、「News Sections」という名前のターゲティングがすでにあるため、3番目の項目が失敗します。
TARGETING_NAME_DUPLICATEにはdetail.existingIdの代わりに、その項目のインデックスを示すdetail.duplicateOfIndexが入ります。
ターゲティング名の一括変更
最大100件のターゲティングの名前を変更します。リクエスト
context-targeting:writeスコープが必要です。
リクエストボディ
リクエスト例
レスポンス例
成功した項目のdataは、名前を変更したターゲティングオブジェクトで、categoriesは含まれません。
ターゲティングの一括削除
最大100件のターゲティングと、それぞれのすべてのオプションを削除します。リクエスト
context-targeting:writeスコープが必要です。
リクエストボディ
リクエスト例
レスポンス例
成功した項目のdataには、削除したターゲティングの_idのみが含まれます。この例では、承認済みで終了していないキャンペーンがターゲティングのオプションの1つを含めているため、ターゲティングは削除されません。