Skip to main content
コンテキストターゲティングAPIを使うと、コンテキストターゲティングをサーバーから管理できます。CMSのセクション、掲示板、タグをターゲティングオプションとコンテキストIDに対応付けておけば、コンソールで手作業で編集しなくても、コンテンツの変化に合わせて自動で更新できます。 APIは、コンソールのコンテキストターゲティングと同じデータを扱います。APIで作成したターゲティングはコンソールに表示され、コンソールで作成したターゲティングもAPIで取得できます。

事前準備

  • context-targeting:readとcontext-targeting:writeの両方のスコープを持つAPIキーが必要です。プロジェクトのオーナーがコンソールの [設定] > [連携] でキーを作成し、両方のスコープを選択します。キーの作成方法は連携 & APIキーを参照してください。
  • 既存のキーのスコープは変更できません。今のキーに両方のスコープがない場合は新しいキーを作成し、不要になった古いキーは廃棄してください。
書き込みが中心の場合でも、両方のスコープを付与してください。各エンドポイントが確認するスコープは1つだけで、context-targeting:writeにはcontext-targeting:readが含まれません。書き込みスコープしかないキーはすべてのGETリクエストで403を受け取るため、IDの確認、現在のコンテキストIDの取得、変更が読み込まれたかの確認ができません。
APIはサーバーからのみ呼び出してください。APIキーをアプリやウェブページに含めないでください。

基本情報

リクエストに関する上限の一覧は、上限を参照してください。

用語

APIのパスやフィールドには、コンソールと異なる名前が使われているものがあります。本ドキュメントではコンソールの名称を使います。

エンドポイント

パスはBase URLからの相対パスです。各エンドポイントには、表に記載したスコープが必要です。 一括操作のエンドポイントは、項目ごとに結果を返します。一括操作のレスポンスを参照してください。

クイックスタート

この例では、「News Sections」ターゲティングを作成し、1つのオプションのコンテキストIDを変更して、その変更が読み込まれたかを確認します。
1

ターゲティングとオプションの作成

ターゲティングとそのオプションを1回のリクエストで作成します。
レスポンスは201で、作成されたターゲティングが返されます。ターゲティングと各オプションの_idを保存してください。後でターゲティングを変更するときに必要です。
作成は冪等ではありません。作成リクエストがタイムアウトした場合は、再送する前に再試行と重複リクエストを参照してください。
2

コンテキストIDの追加と削除

セクションが変わったら、オプションのコンテキストIDを更新します。addとremoveは、指定したIDだけを変更します。
レスポンスは200で、更新後のオプションが返されます。
オプションのコンテキストIDをまとめて置き換える方法は、コンテキストIDの更新方法を参照してください。
3

変更が読み込まれたかを確認

ターゲティングを取得し、そのsyncedAtを更新が成功した時刻と比べます。
前のステップの更新は2026-10-13T01:30:00.000Z(1791855000000)に成功しています。syncedAtはそれより後なので変更は読み込まれており、その後数分以内に広告配信に反映されます。syncedAtがない場合やそれより前の場合は、少し待ってからターゲティングをもう一度取得してください。変更が反映されるタイミングを参照してください。
4

広告リクエストでコンテキストIDを送信

ユーザーが閲覧しているページのコンテキストIDを、広告リクエストのcontextIdとして送信します。変更が反映された後は、contextIdにbasketballを指定した広告リクエストが「Sports」オプションに一致します。広告リクエストでのコンテキストIDの仕組みは、コンテキストターゲティングの作成を参照してください。

変更が反映されるタイミング

書き込みが成功すると、変更はすぐに保存されます。その後、Adropがプロジェクトのコンテキストターゲティングを広告配信に読み込み、通常は数分以内に変更が広告配信に反映されます。 変更が読み込まれたかどうかは、ターゲティングのsyncedAtフィールド(エポックミリ秒)で確認します。
  • syncedAtは、そのターゲティングの直近の読み込みが始まった時刻です。syncedAt以前に成功した変更は読み込み済みで、その後数分以内に広告配信に反映されます。
  • 新しく作成したターゲティングにはsyncedAtが含まれません。コンテキストIDの変更(add、remove、set)、オプションの追加、オプションの移動や切り離しを行った後も含まれません。通常は次の読み込みが完了すると、再び含まれるようになります。
  • 変更したときにすでに実行中だった読み込みによって、syncedAtがその読み込みの開始時刻、つまり変更より前の時刻になることがあります。その読み込みには変更が含まれていない可能性がありますが、その後の読み込みには含まれます。
  • 名前の変更や削除では、syncedAtは消えません。
そのため、syncedAtがあるかどうかで判断しないでください。リクエストが成功した時刻を記録しておき、変更を含むターゲティングを取得します(例:ターゲティングの取得でincludeCategories=falseを指定)。syncedAtがその時刻と同じかそれより後であれば、変更は読み込まれています。syncedAtはAdropのサーバー時刻に基づくため、自社サーバーの時刻とずれがある可能性がある場合は、余裕を持って判断してください。
変更が反映されるまで、広告リクエストは変更前のコンテキストIDと照合されます。新しいコンテキストIDは、アプリやウェブサイトが広告リクエストで送信し始める前に追加してください。

関連ドキュメント

ターゲティング

ターゲティングの一覧取得、作成、名前の変更、削除

ターゲティングオプション

オプションを追加し、コンテキストIDを最新の状態に保つ方法

オプショングループ

オプションを下位オプションとしてオプショングループにまとめる方法

エラーと上限

エラーコード、上限、再試行の方法

連携 & APIキー

APIキーの作成と管理

コンテキストターゲティングの作成

コンテキストターゲティングとコンテキストIDの仕組み

ターゲティングの販売

ターゲティングを広告商品に接続して広告主に販売する方法