보고 ID

Protected Audience 입찰에서 보고 ID의 작동 방식 알아보기

개요

보고 ID는 입찰 생성, 입찰 점수 산정, 보고에 사용할 수 있는 광고와 연결된 식별자입니다. 보고 ID는 구매자가 관심분야 그룹 구성에서 제공하며 이 가이드에서 설명하는 다양한 조건의 generateBid(), scoreAd(), reportResult(), reportWin()에서 사용할 수 있게 됩니다.

보고 ID를 사용하면 광고의 식별자를 보고하고 특가와 같은 사용 사례를 사용할 수 있습니다.

<ph type="x-smartling-placeholder">Protected Audience 구매자 및 판매자 함수에서 보고 ID를 사용할 수 있게 됨</ph>
보고 ID 사용 가능 여부

두 가지 유형의 보고서 ID는 세 가지가 있습니다.

  • 선택할 수 없는 보고 ID
    • buyerReportingId (문자열)
    • buyerAndSellerReportingId(문자열)
  • 선택 가능한 보고 ID
    • selectableBuyerAndSellerReportingIds (문자열 배열)

보고 ID는 선택 가능한 보고 ID가 사용되는지에 따라 다르게 동작합니다. 선택할 수 없는 보고 ID만 사용하는 경우 이러한 ID는 보고 함수 내에서만 사용할 수 있습니다. 선택 가능한 보고 ID와 필요한 경우 선택할 수 없는 보고 ID를 함께 사용하면 정의된 모든 ID를 generateBid()scoreAd()에서도 사용할 수 있습니다.

선택할 수 없는 보고 ID

<ph type="x-smartling-placeholder">보고 ID가 Protected Audience 구매자 및 판매자 기능에 제공됩니다.</ph>
선택 가능한 보고 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',
  }]
});

판매자 보고

판매자 보고 단계에서 buyerAndSellerReportingId 값을 reportResult()에서 사용할 수 있습니다.

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

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

reportResult() 내에서 ID를 사용할 수 있게 되기 전에 관심분야 그룹 소유자, 입찰 스크립트 URL, 렌더링 URL, 광고 크기에 대한 k-익명성 여부를 확인합니다 (적어도 2025년 1분기까지 이 검사에서 광고 크기는 제외됨). k-익명처리가 아닌 경우 reportResult() 함수는 계속 실행되지만 보고 ID 값은 함수 내에서 사용할 수 없습니다.

구매자 보고

입찰의 구매자 보고 단계에서 하나의 보고 ID를 reportWin()이(가) 사용할 수 있게 됩니다. 관심분야 그룹에 보고 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',
  }]
});

그러면 reportWin() 내에서 buyerReportingId를 사용할 수 있습니다.

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',
  }]
});

그러면 reportWin() 내에서 buyerAndSellerReportingId를 사용할 수 있습니다.

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`,
  }]
});

그러면 reportWin() 내에서 name 관심분야 그룹을 사용할 수 있습니다.

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

reportWin()에서 사용할 수 있게 되기 전에 관심분야 그룹 이름(interestGroupName)이 관심분야 그룹 소유자, 입찰 스크립트 URL, 렌더링 URL, 광고 크기를 사용하여 k-익명성이 있는지 확인됩니다(2025년 1분기까지는 광고 크기가 이 확인에서 제외됨).

선택 가능한 보고 ID

보고 ID가 Protected Audience 구매자 및 판매자 기능에 제공됩니다.
선택 가능한 보고 ID를 사용한 보고 ID 사용 가능 여부

선택 가능한 보고 ID를 사용하면 구매자가 입찰 생성 중에 ID를 선택할 수 있으며 브라우저에서는 선택된 값을 scoreAd() 및 보고 함수에 제공합니다. 문자열 배열인 selectableBuyerAndSellerReportingIds 값이 generateBid()에 제공되며 구매자는 선택한 ID 1개를 selectedBuyerAndSellerReportingId로 반환할 수 있습니다.

generateBid()scoreAd() 함수는 관심분야 그룹 구성에 정의된 각 광고에 대해 실행되고 각 광고의 보고 ID를 수신합니다. 구매자 및 판매자 보고 함수는 낙찰된 광고에 대해서만 실행되며, 이 함수는 낙찰된 광고에 정의된 보고 ID를 수신합니다.

선택할 수 없는 보고 ID가 선택할 수 있는 보고 ID와 함께 사용되면 이전 섹션에 설명된 워크플로와는 다르게 동작합니다. 선택 불가능한 보고 ID의 초기 동작은 보고 기능 내에서만 사용할 수 있지만 선택 가능한 보고 ID를 사용하면 선택할 수 없는 보고 ID를 generateBid()scoreAd() 내에서도 사용할 수 있습니다.

플래그를 사용하여 카나리아 M130을 실행하여 테스트할 수 있습니다.

관심분야 그룹

선택 가능한 보고 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가 관심분야 그룹 구성에 정의된 경우 generateBid() 내에서 정의된 다른 보고 ID와 함께 사용할 수 있습니다.

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 중 하나를 선택하고 선택한 ID를 selectedBuyerAndSellerReportingId로 반환할 수 있습니다. 선택한 값이 selectableBuyerAndSellerReportingIds 배열에 없으면 입찰이 거부됩니다. selectableBuyerAndSellerReportingIds가 관심분야 그룹 구성에 정의되어 있고 구매자가 generateBid()에서 selectedBuyerAndSellerReportingId를 반환하지 않는 경우 보고 ID는 선택할 수 없는 보고 ID에 설명된 동작으로 되돌아갑니다.

selectedbuyerAndSellerReportingId에 대해 반환된 값이 있는 입찰가는 selectedbuyerAndSellerReportingId 값이 buyerAndSellerReportingId (있는 경우), buyerReportingId (있는 경우), 관심분야 그룹 소유자, 입찰 스크립트 URL, 렌더링 URL, 광고 크기 (적어도 2025년 1분기까지 이 검사에서 제외됨)와 함께 k-익명인 경우에만 낙찰될 수 있습니다.

판매자 광고 점수

판매자의 경우 generateBid()에서 구매자가 반환한 selectedBuyerAndSellerReportingId는 관심분야 그룹 구성에 정의된 경우 buyerAndSellerReportingId와 함께 scoreAd()에서 사용할 수 있게 됩니다.

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, 광고 크기 (최소 2025년 1분기까지 이 확인에서 광고 크기는 제외됨)와 k-익명이고 해당 입찰가에 대해 reportResult()가 실행되지 않는 한 입찰에서 낙찰을 받을 수 없습니다. 따라서 reportResult()selectedBuyerAndSellerReportingId 값으로 호출되면 보고 ID가 k-익명성 검사를 통과했으며 정의된 모든 보고 ID를 reportResult() 내에서 사용할 수 있음을 의미합니다.

구매자 보고

관심분야 그룹 구성에서 selectableBuyerAndSellerReportingIds가 정의되고 generateBid()에서 selectedBuyerAndSellerReportingId가 반환된 경우 관심분야 그룹 구성에 정의된 모든 보고 ID를 사용할 수 있게 됩니다. 판매자 보고와 마찬가지로 보고 ID가 k-익명적이지 않으면 입찰에서 낙찰될 수 없으며 reportWin()가 해당 입찰에 대해 실행되지 않습니다.

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

  // ...
}

덮어쓰기 규칙

여기에는 선택할 수 없는 보고 ID와 선택 가능한 보고 ID에 대한 덮어쓰기 규칙이 요약되어 있습니다. reportWin()에 전달되는 selectableBuyerAndSellerReportingIds, buyerAndSellerReportingId, buyerReportingId 및 관심분야 그룹 이름 중 어느 것이 브라우저에 의해 다음 로직에 따라 결정됩니다.

  • 입찰가에서 selectedBuyerAndSellerReportingId가 반환되면 selectedBuyerAndSellerReportingId, buyerAndSellerReportingId (관심분야 그룹에 정의된 경우), 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 없음

참여 및 의견 공유