レポート ID

Protected Audience オークションでのレポート ID の仕組み

概要

レポート ID は、広告に関連付けられた識別子で、入札単価の生成、入札単価のスコアリング、レポートの作成に使用できます。レポート ID は、インタレスト グループの設定で購入者が指定します。この ID は、このガイドで説明するさまざまな条件下で、generateBid()scoreAd()reportResult()reportWin() で使用できるようになります。

レポート ID を使用すると、広告の識別子をレポートできるだけでなく、取引などのユースケースにも活用できます。

<ph type="x-smartling-placeholder"></ph> Protected Audience の購入者と販売者の機能でレポート ID が利用可能に をご覧ください。
利用できるレポート ID

次の 2 種類のレポート ID が 3 つあります。

  • 選択できないレポート ID
    • buyerReportingId(文字列)
    • buyerAndSellerReportingId(文字列)
  • 選択可能なレポート ID
    • selectableBuyerAndSellerReportingIds(文字列の配列)

レポート ID の動作は、選択可能なレポート ID を使用しているかどうかによって異なります。選択できないレポート ID のみを使用する場合、それらの ID はレポート機能内でのみ使用できるようになります。選択可能なレポート ID と、必要に応じて選択不可能なレポート ID を使用すると、定義されたすべての ID を generateBid()scoreAd() 内で使用できるようになります。

選択できないレポート ID

<ph type="x-smartling-placeholder"></ph> Protected Audience の購入者と販売者の機能でレポート ID が利用可能に をご覧ください。
選択可能なレポート ID の提供状況

buyerReportingIdbuyerAndSellerReportingId はインタレスト グループの設定で定義されている選択不可のレポート ID で、購入者と販売者のレポート機能で使用できます。購入者と販売者のレポート機能は落札広告に対してのみ実行され、落札広告で定義されたレポート ID を受け取ります。

選択可能なレポート ID なしで使用すると、購入者レポート機能では上書きの動作に応じて buyerReportingId または buyerAndSellerReportingId を受け取り、販売者レポート機能では buyerAndSellerReportingId を受け取ります。インタレスト グループの設定で buyerReportingIdbuyerAndSellerReportingId も定義されていない場合、reportWin() 関数は落札単価のインタレスト グループ名(interestGroupName)を受け取ります。

選択不可能な ID を、選択可能なレポート ID と併用しない場合、generateBid()scoreAd() 内では使用できません。

インタレスト グループのレポート ID

レポート ID は、購入者がインタレスト グループ内の広告ごとに定義します。

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    // buyerAndSellerReportingId goes to the buyer and seller reporting functions
    buyerAndSellerReportingId: 'bsrid123',
    // buyerReportingId is defined here as an example, but
    // is not used due to the overwrite rules described later
    buyerReportingId: 'brid123',
  }]
});

販売者向けレポート

販売者レポート フェーズでは、reportResult()buyerAndSellerReportingId の値を使用できます。

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

ID が reportResult() 内で使用可能になる前に、インタレスト グループの所有者、入札スクリプトの URL、レンダリング URL、広告サイズとの k-匿名性が確認されます(広告サイズは少なくとも 2025 年第 1 四半期までは除外されます)。k-anonymous でない場合、reportResult() 関数は実行されますが、レポート ID の値は関数内で使用できません。

購入者向けレポート

オークションの購入者レポート フェーズで、reportWin() は 1 つのレポート ID を使用できるようになります。インタレスト グループに複数のレポート ID が定義されている場合は、上書きルールが適用され、「buyerAndSellerReportingId」で「buyerReportingId」を上書きします。

  • buyerAndSellerReportingIdbuyerReportingId の両方が定義されている場合、buyerAndSellerReportingIdbuyerReportingId を上書きし、buyerAndSellerReportingIdreportWin() 内で使用できます。
  • buyerReportingId のみが定義されている場合は、buyerReportingId を使用できます。
  • buyerAndSellerReportingIdbuyerReportingId も定義されていない場合は、interestGroupName を使用できます。
function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

reportWin() 内で入手可能なレポート ID について、インタレスト グループの所有者、入札スクリプトの URL、レンダリング URL、広告サイズとの k-匿名性が確認されます(広告サイズは少なくとも 2025 年第 1 四半期までは除外されます)。k-匿名性チェックに失敗した場合、reportWin() は引き続き実行されますが、レポート ID の値は関数内で使用できません。

buyerReportingId のみが定義されている

インタレスト グループの設定で buyerReportingId のみが定義されている場合:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
  }]
});

buyerReportingIdreportWin() 内で使用できます。

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
  } = browserSignals;
}

reportWin() で使用可能になる前に、buyerReportingId はインタレスト グループの所有者、入札スクリプトの URL、レンダリング URL、広告サイズについて k-匿名性があるかどうかがチェックされます(広告サイズは少なくとも 2025 年第 1 四半期までは対象外となります)。

buyerAndSellerReportingId のみが定義されている

インタレスト グループの設定で buyerAndSellerReportingId のみが定義されている場合:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

これにより、buyerAndSellerReportingIdreportWin() 内で利用可能になります。

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

reportWin() で使用可能になる前に、buyerAndSellerReportingId はインタレスト グループの所有者、入札スクリプトの URL、レンダリング URL、広告サイズについて k-匿名性がチェックされます(広告サイズは少なくとも 2025 年第 1 四半期まではこのチェックから除外されます)。

buyerAndSellerReportingIdbuyerReportingId の両方が定義されている

インタレスト グループの設定で buyerAndSellerReportingIdbuyerReportingId の両方が定義されている場合:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

上書き動作により、reportWin() 内で使用できるのは buyerAndSellerReportingId のみです。

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

reportWin() で使用可能になる前に、buyerAndSellerReportingId はインタレスト グループの所有者、入札スクリプトの URL、レンダリング URL、広告サイズについて k-匿名性があるかどうかがチェックされます(広告サイズは少なくとも 2025 年第 1 四半期までは対象外となります)。

buyerAndSellerReportingIdbuyerReportingId も定義されていない

インタレスト グループの設定でどちらのレポート ID も定義されていない場合:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
  }]
});

これにより、インタレスト グループ namereportWin() 内で利用可能になります。

function reportWin(..., browserSignals, ...) {
  const {
    interestGroupName, // 'example-interest-group'
  } = browserSignals;
}

reportWin() で使用可能になる前に、インタレスト グループ名(interestGroupName)について、インタレスト グループの所有者、入札スクリプトの URL、レンダリング URL、広告サイズと k-匿名性が確認されるかどうかが確認されます(広告サイズは少なくとも 2025 年第 1 四半期までは除外されます)。

選択可能なレポート ID

<ph type="x-smartling-placeholder"></ph> Protected Audience の購入者と販売者の機能でレポート ID が利用可能に をご覧ください。
選択可能なレポート ID で使用できるレポート ID

選択可能なレポート ID を使用すると、購入者は入札の生成時に ID を選択できます。選択した値は、ブラウザで scoreAd() とレポート機能で利用できるようになります。selectableBuyerAndSellerReportingIds 値(文字列の配列)が generateBid() に提供され、購入者は選択した ID を selectedBuyerAndSellerReportingId として返すことができます。

generateBid() 関数と scoreAd() 関数は、インタレスト グループの設定で定義された広告ごとに実行され、各広告のレポート ID を受け取ります。購入者と販売者のレポート機能は落札広告に対してのみ実行され、落札広告で定義されたレポート ID を受け取ります。

選択可能なレポート ID と選択不可能なレポート ID を併用する場合、動作は前のセクションで説明したワークフローとは異なります。選択できないレポート ID がレポート機能内でのみ使用できる当初の動作とは異なり、選択可能なレポート ID を使用すると、選択できないレポート ID を generateBid() および scoreAd() 内でも使用できるようになります。

インタレスト グループ

選択可能なレポート ID フィールド(selectableBuyerAndSellerReportingIds)は、広告のインタレスト グループで購入者が定義した文字列の配列です。選択できないレポート ID も、選択可能なレポート ID とともに定義できます。

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
    selectableBuyerAndSellerReportingIds: ['sbsrid1', 'sbsrid2', 'sbsrid3']
  }]
});

購入者の入札単価の生成

selectableBuyerAndSellerReportingIds がインタレスト グループの設定で定義されている場合は、定義された他のレポート ID とともに generateBid() 内で使用できるようになります。

function generateBid(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectableBuyerAndSellerReportingIds // ['sbsrid1', 'sbsrid2', 'sbsrid3']
  } = browserSignals;

  return {
    bid: 1,
    render: 'https://buyer.example/ad.html',
    selectedBuyerAndSellerReportingId: 'sbsrid2' // Buyer returns the selected ID
  };
}

購入者は generateBid()selectableBuyerAndSellerReportingIds 配列から ID を 1 つ選択し、選択した ID を selectedBuyerAndSellerReportingId として返すことができます。選択した値が selectableBuyerAndSellerReportingIds 配列に含まれていない場合、入札は拒否されます。インタレスト グループの設定で selectableBuyerAndSellerReportingIds が定義されていて、購入者が generateBid() から selectedBuyerAndSellerReportingId を返さない場合、レポート ID は選択できないレポート ID の動作に戻ります。

selectedbuyerAndSellerReportingId の値が返された入札は、selectedbuyerAndSellerReportingId の値が buyerAndSellerReportingId(存在する場合)、buyerReportingId(存在する場合)、インタレスト グループ オーナー、入札スクリプト URL、レンダリング URL、広告サイズとともに k-匿名化されている場合にのみ、オークションで落札する可能性があります(広告サイズは 2025 年第 1 四半期までこのチェックから除外されます)。

販売者の広告スコア

販売者の場合、購入者が generateBid() から返した selectedBuyerAndSellerReportingIdscoreAd() で利用できるようになります。インタレスト グループの設定で定義されている場合は buyerAndSellerReportingId になります。

function scoreAd(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId, // 'sbsrid2'
  } = browserSignals;

  // ...
}

販売者向けレポート

販売者レポートでは、generateBid() から購入者が返した selectedBuyerAndSellerReportingId は、インタレスト グループで定義されている場合は buyerAndSellerReportingId とともに reportResult() で利用できるようになります。

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;
  
  // ...
}

インタレスト グループの設定で selectableBuyerAndSellerReportingIds が定義され、generateBid() から selectedBuyerAndSellerReportingId が返された場合、selectedBuyerAndSellerReportingIdbuyerAndSellerReportingId(存在する場合)がインタレスト グループの所有者、入札スクリプトの URL、レンダリング URL、広告サイズについて k-匿名性を持つ(少なくとも 2025 年第 1 四半期までは広告サイズはこのチェックの対象外)、その入札では reportResult() は実行されません。ただし、オークションを落札することはできません。したがって、selectedBuyerAndSellerReportingId の値を指定して reportResult() が呼び出された場合、レポート ID は k-匿名性チェックに合格し、定義されたすべてのレポート ID を reportResult() 内で使用できるようになります。

購入者向けレポート

インタレスト グループの設定で selectableBuyerAndSellerReportingIds が定義され、generateBid() から selectedBuyerAndSellerReportingId が返された場合は、インタレスト グループの設定で定義されたすべてのレポート ID を使用できます。なお、販売者レポートと同様に、レポート ID が k-anonymous でない場合、オークションで落札できず、その入札では reportWin() は実施されません。

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;

  // ...
}

オーバーライド ルール

選択不可のレポート ID と選択可能なレポート ID の両方の上書きルールを以下にまとめます。selectableBuyerAndSellerReportingIdsbuyerAndSellerReportingIdbuyerReportingId、興味 / 関心グループ名のどれが reportWin() に渡されるかは、ブラウザによって次のロジックで決定されます。

  • 入札単価から selectedBuyerAndSellerReportingId が返された場合は、selectedBuyerAndSellerReportingIdbuyerAndSellerReportingId(インタレスト グループで定義されている場合)、buyerReportingId(インタレスト グループで定義されている場合)をレポートに使用できます。
  • 興味 / 関心のグループで buyerAndSellerReportingId が定義されている場合は、レポートに使用できるのは buyerAndSellerReportingId のみです。
  • 興味 / 関心のグループで buyerReportingId が定義されている場合は、レポートに使用できるのは buyerReportingId のみです。
  • それ以外の場合は、インタレスト グループ「name」のみがレポートに表示されます。

次の表に、上書きの動作を示します。

レポート ID はインタレスト グループの設定で定義されていますか? 使用可能なレポート ID
selectableBuyerAnd
SellerReportingIds
buyerAndSeller
ReportingId
buyerReportingId reportWin() reportResult()
はいgenerateBid()
を選択しました
省略可 省略可 1)selectableBuyerAnd
SellerReportingIds


2)buyerAndSeller
ReportingId
(定義されている場合)

3)buyerReportingId(定義されている場合)
1)selectableBuyerAnd
SellerReportingIds


2)buyerAndSeller
ReportingId
(定義されている場合)

いいえ、または選択されていません
generateBid()
はい 無視 buyerAndSeller
ReportingId
buyerAndSeller
ReportingId
いいえ、または選択されていません
generateBid()
いいえ はい buyerReportingId なし
いいえ、または generateBid()
が選択されていません
いいえ いいえ interestGroupName なし

対応してフィードバックを共有する