Używanie Topics w połączeniu z automatycznym określaniem stawek w ramach ochrony odbiorców

Dowiedz się, jak wykorzystywać zainteresowania z Topics jako dane wejściowe w procesie określania stawek i aukcji w ramach Protected Audience API. W ramach Protected Audience API kupujący i sprzedawca mogą przekazywać własne sygnały do procesu określania stawek i aukcji. Sygnały dostarczane przez Topics mogą służyć do wzbogacania danych dostępnych podczas procesu określania stawek i wyboru reklam o informacje o zainteresowaniach bieżącego użytkownika, co może zwiększyć potencjalną wartość zasobów reklamowych.

Przed przeczytaniem tego przewodnika upewnij się, że znasz pojęcia Topics i Protected Audience.

Pobierz tematy

Podczas wywoływania interfejsu Topics API element wywołujący zobaczy wybór tematów, które wcześniej zaobserwował w tej przeglądarce.

const currentTopics = await document.browsingTopics();
// Example result
[
  {
    "configVersion": "chrome.2",
    "modelVersion": "4",
    "taxonomyVersion": "2",
    "topic": 310,
    "version": "chrome.2:2:4"
  }
]

W tym przypadku temat: 310 odwzorowuje się na „Sport/kolarstwo”.

Przykłady te pokazują wartości dotyczące tematów używane bezpośrednio, ale w ramach pełnej implementacji można je przetwarzać lub łączyć z innymi danymi.

Warunkowe definiowanie grupy zainteresowań za pomocą tematów

Powstały w ten sposób temat może posłużyć bezpośrednio do dodania użytkownika do grupy zainteresowań.

if (currentTopics[0].topic === 310) { // Interest in "Sports/Cycling"
  const interestGroup = {
  owner: 'https://dsp.example',
  name: 'custom-bikes',
  }
}

Udostępnij tematy związane z kupującymi grupie zainteresowań

Bieżące tematy (lub dane przetwarzane na ich podstawie) można uwzględnić w elemencie userBiddingSignals podczas tworzenia grupy zainteresowań. Pozwoli to kupującemu korzystać z tematów podczas ustalania stawek.

const interestGroup = {
  owner: 'https://dsp.example',
  name: 'custom-bikes',
  userBiddingSignals: {
    topics: currentTopics,
    ....
  },
  ...
};

navigator.joinAdInterestGroup(interestGroup, 7 * kSecsPerDay);

Dodawanie tematów sprzedawców do aukcji

Bieżące tematy widoczne dla sprzedawcy (lub przetwarzane na ich podstawie dane) mogą zostać uwzględnione w kombinacji tych atrybutów: auctionSignals, sellerSignals lub perBuyerSignals podczas konfigurowania aukcji. Dzięki temu kupujący może korzystać z tematów podczas ustalania stawek, a sprzedawca – stosować tematy do oceny stawek.

const myAuctionConfig = {
  seller: 'https://ssp.example',
  auctionSignals: {
    topics: currentTopics,
  },
  sellerSignals: {
    topics: currentTopics,
  },
  perBuyerSignals: {
    'https://dsp.example': {
      topics: currentTopics,
      // ...
    },
    // ...
  },
  // ...
};
const result = await navigator.runAdAuction(myAuctionConfig);

Używanie tematów przy ustalaniu stawek

Następnie po wywołaniu funkcji generateBid() kupującego mogą zostać użyte zarejestrowane tematy (tak samo jak inne dane przekazywane w sygnałach) do ustalania stawek. Licytujący może na przykład wykorzystać temat „Sport/kolarstwo”, aby ustalić wyższe stawki w grupie zainteresowań custom-bikes.

generateBid(interestGroup, auctionSignals, perBuyerSignals,
    trustedBiddingSignals, browserSignals) {
  const topics = interestGroup.userBiddingSignals.topics;
  // Use the topic values in the bidding logic.
}

Używaj tematów do określania stawek

Po ustaleniu stawki i wywołaniu funkcji scoreAd() sprzedawcy zarejestrowane tematy mogą być używane tak samo jak inne dane przekazywane z konfiguracji aukcji. Sprzedawca może na przykład zdecydować, że stawki będą wyższe dla reklam, które są dopasowane do wykrytych tematów.

scoreAd(adMetadata, bid, auctionConfig, trustedScoringSignals, browserSignals, directFromSellerSignals) {
  const sellerTopics = actionConfig.auctionSignals.topics;
  // or corresponding key in sellerSignals
  // use the topics values to score the ads
  //...
}