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 ustalania stawek i aukcji w ramach Protected Audience API. Funkcja Protected Audience API ma kilka punktów, w których kupujący i sprzedawca mogą przekazywać własne sygnały do procesu licytacji i aukcji. Sygnały dostarczane przez Topics mogą zostać wykorzystane do wzbogacenia danych dostępnych podczas określania stawek i wyboru reklam o informacje o bieżących zainteresowaniach użytkowników, co zwiększy potencjalną wartość zasobów reklamowych.

Zanim przeczytasz ten przewodnik, upewnij się, że znasz zarówno Tematy, jak i Protected Audience API.

Pobierz tematy

Po wywołaniu interfejsu Topics API użytkownik wywołujący zobaczy wybór tematów, które wcześniej obserwował 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 jest mapowany na „Sport/kolarstwo”.

Przykłady pokazują bezpośrednio używane wartości tematów, ale w pełnej implementacji możesz je przetworzyć lub połączyć z innymi danymi.

Używanie tematów do warunkowego definiowania grupy zainteresowań

Uzyskany 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',
  }
}

Podaj tematy kupujących grupie zainteresowań

Bieżące tematy (lub dane przetworzone na ich podstawie) można uwzględnić w elemencie userBiddingSignals podczas tworzenia grupy zainteresowań. To pozwala kupującemu używać tematów podczas ustalania stawek.

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

navigator.joinAdInterestGroup(interestGroup, 7 * kSecsPerDay);

Podaj tematy sprzedawców na aukcji

Bieżące tematy widoczne dla sprzedawcy (lub dane przetwarzane na jego podstawie) mogą być uwzględnione w kombinacji auctionSignals, sellerSignals lub perBuyerSignals podczas konfigurowania aukcji. Dzięki temu kupujący mogą używać tematów podczas ustalania stawek, a sprzedawca – podczas określania 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);

Ustalaj stawki według tematów

Po wywołaniu funkcji generateBid() kupującego zarejestrowane tematy mogą zostać użyte (tak samo jak w przypadku innych danych w sygnałach) do ustalania stawek. Licytujący może np. użyć słów kluczowych „Sport/Kolarstwo” aby ustalać wyższe stawki w tej 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 podczas ustalania stawek

Po ustaleniu stawki po wywołaniu funkcji scoreAd() sprzedawcy zarejestrowane tematy mogą być używane tak samo jak innych danych przekazywanych z konfiguracji aukcji. Na przykład sprzedawca może chcieć zwiększyć wagę stawek za reklamy pasujące 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
  //...
}