Identyfikatory raportowania

Dowiedz się, jak działają identyfikatory raportowania na aukcji z użyciem Protected Audience API

Przegląd

Identyfikatory raportowania to identyfikatory powiązane z reklamą, które są dostępne do użycia podczas generowania stawki, jej oceniania i raportowania. Identyfikatory raportowania są podawane przez kupującego w konfiguracji grupy zainteresowań i stają się dostępne w polach generateBid(), scoreAd(), reportResult()reportWin() w różnych warunkach, które omawiamy w tym przewodniku.

Identyfikatory raportowania umożliwiają zgłaszanie identyfikatora reklamy, a także korzystanie z przypadków użycia, takich jak transakcje.

Identyfikatory raportowania stają się dostępne dla funkcji kupującego i sprzedawcy w Protected Audience API
Dostępność identyfikatorów raportowania

Istnieją 3 identyfikatory raportowania 2 rodzajów:

  • Identyfikatory raportowania, których nie można wybrać
    • buyerReportingId (ciąg znaków)
    • buyerAndSellerReportingId (ciąg znaków)
  • Identyfikatory raportowania, które można wybrać
    • selectableBuyerAndSellerReportingIds (tablica ciągów tekstowych)

Identyfikatory na potrzeby raportowania działają inaczej w zależności od tego, czy są używane identyfikatory na potrzeby raportowania, które można wybrać. Jeśli używane są tylko identyfikatory raportowania, których nie można wybrać, są one dostępne tylko w funkcjach raportowania. Jeśli używane są identyfikatory raportowania, które można wybrać, a w razie potrzeby także identyfikatory raportowania, których nie można wybrać, wszystkie zdefiniowane identyfikatory stają się dostępne w generateBid()scoreAd().

Identyfikatory raportowania, których nie można wybrać

Identyfikatory raportowania stają się dostępne dla funkcji kupującego i sprzedawcy w Protected Audience API
Dostępność identyfikatorów raportowania, które można wybrać

buyerReportingIdbuyerAndSellerReportingId to identyfikatory raportowania, których nie można wybrać. Są one zdefiniowane w konfiguracji grupy zainteresowań i dostępne w funkcjach raportowania kupującego i sprzedawcy. Funkcje raportowania kupującego i sprzedawcy będą działać tylko w przypadku zwycięskiej reklamy i otrzymają identyfikatory raportowania zdefiniowane dla tej reklamy.

Jeśli funkcja raportowania kupującego jest używana bez identyfikatorów raportowania z możliwością wyboru, otrzymuje ona wartość buyerReportingId lub buyerAndSellerReportingId w zależności od zachowania związanego z zastępowaniem, a funkcja raportowania sprzedawcy otrzymuje wartość buyerAndSellerReportingId. Jeśli w konfiguracji grupy zainteresowań nie zdefiniowano ani buyerReportingId, ani buyerAndSellerReportingId, funkcja reportWin() otrzymuje nazwę grupy zainteresowań (interestGroupName) zwycięskiej stawki.

Identyfikatory, których nie można wybrać, nie są dostępne w przypadku funkcji generateBid()scoreAd(), jeśli nie są używane w połączeniu z identyfikatorami raportowania, które można wybrać.

Identyfikatory raportowania w grupach zainteresowań

Identyfikatory raportowania są definiowane przez kupującego dla każdej reklamy w grupie zainteresowań:

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

Raportowanie przez sprzedawcę

W fazie raportowania dotyczącego sprzedawcy wartość buyerAndSellerReportingId staje się dostępna dla reportResult():

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

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

Zanim identyfikator stanie się dostępny w reportResult(), jest sprawdzany pod kątem k-anonimowości z właścicielem grupy zainteresowań, adresem URL skryptu ustalania stawek, adresem URL renderowania i rozmiarem reklamy (rozmiar reklamy jest wykluczony z tego sprawdzania co najmniej do I kwartału 2025 r.). Jeśli nie jest ona k-anonimowa, funkcja reportResult() nadal będzie działać, ale wartość identyfikatora raportowania nie będzie w niej dostępna.

Raporty kupujących

Podczas fazy raportowania kupującego w aukcji reportWin() udostępnia jeden identyfikator raportowania. Jeśli w grupie zainteresowań zdefiniowano więcej niż 1 identyfikator raportowania, stosowana jest reguła zastępowania, w której buyerAndSellerReportingId zastępuje buyerReportingId:

  • Jeśli zdefiniowane są zarówno buyerAndSellerReportingId, jak i buyerReportingId, wartość buyerAndSellerReportingId zastąpi wartość buyerReportingId, a wartość buyerAndSellerReportingId będzie dostępna w reportWin().
  • Jeśli zdefiniowano tylko parametr buyerReportingId, dostępny będzie parametr buyerReportingId.
  • Jeśli nie zdefiniowano ani buyerAndSellerReportingId, ani buyerReportingId, dostępna będzie wartość interestGroupName.
function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

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

Identyfikator raportowania, który staje się dostępny w reportWin(), jest sprawdzany pod kątem k-anonimowości z właścicielem grupy zainteresowań, adresem URL skryptu ustalania stawek, adresem URL renderowania i rozmiarem reklamy (rozmiar reklamy jest wykluczony z tego sprawdzania co najmniej do I kwartału 2025 r.). Jeśli nie przejdzie testu k-anonimowości, funkcja reportWin() nadal będzie działać, ale wartość identyfikatora raportowania nie będzie w niej dostępna.

Zdefiniowana jest tylko wartość buyerReportingId

Jeśli w konfiguracji grupy zainteresowań zdefiniowano tylko buyerReportingId:

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

Wtedy buyerReportingId jest dostępny w reportWin():

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

Zanim reportWin() stanie się dostępny dla buyerReportingId, sprawdzana jest jego k-anonimowość w przypadku właściciela grupy zainteresowań, adresu URL skryptu określania stawek, adresu URL renderowania i rozmiaru reklamy (rozmiar reklamy nie jest uwzględniany w tym sprawdzaniu co najmniej do pierwszego kwartału 2025 r.).

Zdefiniowany jest tylko identyfikator buyerAndSellerReportingId

Jeśli w konfiguracji grupy zainteresowań zdefiniowano tylko buyerAndSellerReportingId:

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

Wtedy buyerAndSellerReportingId jest dostępny w reportWin():

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

Zanim reportWin() stanie się dostępny dla buyerAndSellerReportingId, sprawdzana jest jego k-anonimowość w przypadku właściciela grupy zainteresowań, adresu URL skryptu określania stawek, adresu URL renderowania i rozmiaru reklamy (rozmiar reklamy nie jest uwzględniany w tym sprawdzaniu co najmniej do pierwszego kwartału 2025 r.).

Zdefiniowane są zarówno buyerAndSellerReportingId, jak i buyerReportingId.

Jeśli w konfiguracji grupy zainteresowań zdefiniowane są zarówno buyerAndSellerReportingId, jak i buyerReportingId:

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

W takim przypadku w reportWin() dostępna jest tylko wartość buyerAndSellerReportingId ze względu na zachowanie zastępowania:

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

Zanim reportWin() stanie się dostępny dla buyerAndSellerReportingId, sprawdzana jest jego k-anonimowość w przypadku właściciela grupy zainteresowań, adresu URL skryptu określania stawek, adresu URL renderowania i rozmiaru reklamy (rozmiar reklamy nie jest uwzględniany w tym sprawdzaniu co najmniej do pierwszego kwartału 2025 r.).

Nie zdefiniowano ani buyerAndSellerReportingId, ani buyerReportingId

Jeśli w konfiguracji grupy zainteresowań nie zdefiniowano żadnego identyfikatora raportowania:

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

Wtedy grupa zainteresowań name będzie dostępna w reportWin():

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

Zanim nazwa grupy zainteresowań (interestGroupName) stanie się dostępna dla reportWin(), jest sprawdzana pod kątem k-anonimowości z właścicielem grupy zainteresowań, adresem URL skryptu ustalania stawek, adresem URL renderowania i rozmiarem reklamy (rozmiar reklamy jest wykluczony z tego sprawdzania co najmniej do I kwartału 2025 r.).

Identyfikatory raportowania, które można wybrać

Identyfikatory raportowania stają się dostępne dla funkcji kupującego i sprzedawcy w Protected Audience API
Dostępność identyfikatorów raportowania z możliwością wyboru identyfikatora raportowania

Identyfikatory raportowania, które można wybrać, umożliwiają kupującemu wybranie identyfikatora podczas generowania stawki, a przeglądarka udostępnia wybraną wartość scoreAd() i funkcjom raportowania. Wartość selectableBuyerAndSellerReportingIds, która jest tablicą ciągów znaków, jest przekazywana do generateBid(), a kupujący może zwrócić jeden wybrany identyfikator jako selectedBuyerAndSellerReportingId.

Funkcje generateBid()scoreAd() będą uruchamiane dla każdej reklamy zdefiniowanej w konfiguracji grupy zainteresowań i będą otrzymywać identyfikatory raportowania każdej reklamy. Funkcje raportowania kupującego i sprzedawcy będą działać tylko w przypadku zwycięskiej reklamy i otrzymają identyfikatory raportowania zdefiniowane dla tej reklamy.

Gdy identyfikatory raportowania, których nie można wybrać, są używane w połączeniu z identyfikatorami raportowania, które można wybrać, ich działanie różni się od tego opisanego w poprzedniej sekcji. W przeciwieństwie do początkowego działania, w którym niemożliwe do wybrania tożsamości na potrzeby raportowania były dostępne tylko w funkcjach raportowania, możliwe do wybrania tożsamości na potrzeby raportowania umożliwiają udostępnianie niemożliwych do wybrania tożsamości na potrzeby raportowania również w funkcjach generateBid()scoreAd().

.

Grupa zainteresowań

Pole identyfikatorów raportowania, które można wybrać – selectableBuyerAndSellerReportingIds – to tablica ciągów tekstowych zdefiniowanych przez kupującego w grupie zainteresowań na potrzeby reklamy. Oprócz identyfikatorów raportowania, które można wybrać, można też zdefiniować identyfikatory raportowania, których nie można wybrać:

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

Generowanie stawek kupującego

Jeśli w konfiguracji grupy zainteresowań zdefiniowano selectableBuyerAndSellerReportingIds, staje się on dostępny w generateBid() wraz z innymi zdefiniowanymi identyfikatorami raportowania.

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

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

Kupujący może wybrać jeden z identyfikatorów z tablicy selectableBuyerAndSellerReportingIds w parametrze generateBid() i zwrócić wybrany identyfikator jako selectedBuyerAndSellerReportingId. Jeśli wybrana wartość nie znajduje się w tablicy selectableBuyerAndSellerReportingIds, stawka jest odrzucana. Jeśli w konfiguracji grupy zainteresowań zdefiniowano parametr selectableBuyerAndSellerReportingIds, a kupujący nie zwróci parametru selectedBuyerAndSellerReportingId z parametru generateBid(), identyfikatory raportowania powrócą do zachowania opisanego w przypadku identyfikatorów raportowania, których nie można wybrać.

Stawka ze zwróconą wartością selectedbuyerAndSellerReportingId może wygrać aukcję tylko wtedy, gdy wartość selectedbuyerAndSellerReportingId jest wspólnie k-anonimowa z wartościami buyerAndSellerReportingId (jeśli występuje), buyerReportingId (jeśli występuje), właścicielem grupy zainteresowań, adresem URL skryptu ustalania stawek, adresem URL renderowania i rozmiarem reklamy (rozmiar reklamy jest wykluczony z tego sprawdzania co najmniej do I kwartału 2025 r.).

Ocena reklam sprzedawców

W przypadku sprzedawcy selectedBuyerAndSellerReportingId zwrócony przez kupującego z generateBid() staje się dostępny w scoreAd() wraz z buyerAndSellerReportingId, jeśli został zdefiniowany w konfiguracji grupy zainteresowań.

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

  // ...
}

Raportowanie przez sprzedawcę

W przypadku raportowania sprzedawcy wartość selectedBuyerAndSellerReportingId zwrócona przez kupującego z generateBid() staje się dostępna w reportResult() wraz z buyerAndSellerReportingId, jeśli została zdefiniowana w grupie zainteresowań.

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

Jeśli w konfiguracji grupy zainteresowań zdefiniowano selectableBuyerAndSellerReportingIds, a funkcja generateBid() zwróciła wartość selectedBuyerAndSellerReportingId, nie może ona wygrać aukcji, chyba że wartości selectedBuyerAndSellerReportingIdbuyerAndSellerReportingId (jeśli występuje) są k-anonimowe w przypadku właściciela grupy zainteresowań, adresu URL skryptu ustalania stawek, adresu URL renderowania i rozmiaru reklamy (rozmiar reklamy jest wykluczony z tego sprawdzania co najmniej do I kwartału 2025 r.), a w przypadku tej stawki nie zostanie wykonana funkcja reportResult(). Jeśli więc funkcja reportResult() zostanie wywołana z wartością parametru selectedBuyerAndSellerReportingId, oznacza to, że identyfikatory raportowania przeszły test k-anonimowości i wszystkie zdefiniowane identyfikatory raportowania będą dostępne w funkcji reportResult().

Raporty kupujących

Jeśli w konfiguracji grupy zainteresowań zdefiniowano parametr selectableBuyerAndSellerReportingIds, a funkcja generateBid() zwróciła parametr selectedBuyerAndSellerReportingId, wszystkie identyfikatory raportowania zdefiniowane w konfiguracji grupy zainteresowań staną się dostępne. Pamiętaj, że podobnie jak w przypadku raportowania sprzedawcy, jeśli identyfikatory raportowania nie są k-anonimowe, nie mogą wygrać aukcji i reportWin() nie będą wyświetlane w przypadku tej stawki.

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

  // ...
}

Zastąp reguły

Poniżej podsumowujemy reguły zastępowania zarówno w przypadku identyfikatorów raportowania, których nie można wybrać, jak i tych, które można wybrać. To, które z wartości selectableBuyerAndSellerReportingIds, buyerAndSellerReportingId, buyerReportingId i nazwa grupy zainteresowań są przekazywane do reportWin(), zależy od przeglądarki i jest określane na podstawie tych zasad:

  • Jeśli w odpowiedzi na żądanie stawki zwrócona zostanie wartość selectedBuyerAndSellerReportingId, na potrzeby raportowania dostępne będą wartości selectedBuyerAndSellerReportingId, buyerAndSellerReportingId (jeśli jest zdefiniowana w grupie zainteresowań) i buyerReportingId (jeśli jest zdefiniowana w grupie zainteresowań).
  • W przeciwnym razie, jeśli w grupie zainteresowań zdefiniowano buyerAndSellerReportingId, na potrzeby raportowania dostępny jest tylko ten identyfikator.buyerAndSellerReportingId
  • W przeciwnym razie, jeśli w grupie zainteresowań zdefiniowano buyerReportingId, na potrzeby raportowania dostępny jest tylko ten identyfikator.buyerReportingId
  • W przeciwnym razie do raportowania dostępna jest tylko grupa zainteresowań name.

W tabeli poniżej opisano zachowanie związane z zastępowaniem:

Czy identyfikatory raportowania są zdefiniowane w konfiguracji grupy zainteresowań? Dostępne identyfikatory raportowania
selectableBuyerAnd
SellerReportingIds
buyerAndSeller
ReportingId
buyerReportingId reportWin() reportResult()
Tak, a wybrany atrybut
generateBid()
Opcjonalny Opcjonalny 1) selectedBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(jeśli zdefiniowano)

3) buyerReportingId (jeśli zdefiniowano)
1) selectedBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(jeśli zdefiniowano)

Nie lub nie wybrano
generateBid()
Tak Zignorowano buyerAndSeller
ReportingId
buyerAndSeller
ReportingId
Nie lub nie wybrano
generateBid()
Nie Tak buyerReportingId Brak
Nie lub nie wybrano:
generateBid()
Nie Nie interestGroupName Brak

Angażowanie się i przesyłanie opinii