Eksperyment Chrome Topics dotyczący RTB

W ramach Piaskownicy prywatności Chrome zaproponował eksperymentalny interfejs Topics API. Interfejs Topics API udostępnia podmiotom wywołującym z zewnątrz na stronie internetowej (w tym dostawcom technologii reklamowych) ogólne tematy reklamowe, które mogą obecnie interesować osobę odwiedzającą stronę. Tematy mogą uzupełniać informacje kontekstowe o bieżącej stronie i być przydatne w przypadku reklam opartych na zainteresowaniach.

Eksperyment z interfejsem Topics API jest dostępny dla partnerów RTB w pytaniach o stawkę. Tematy są wysyłane do wszystkich partnerów RTB w zależności od dostępności.

Reprezentacja pytania o stawkę

Protokół OpenRTB

Tematy są reprezentowane jako segmenty w komunikacie OpenRTB BidRequest.user.data.

Pole Typ Opis
Data.ext.segtax Liczba całkowita Identyfikator taksonomii, która jest zarejestrowana centralnie. W przypadku tematów jest to wersja taksonomii reklamowej, która określa znaczenie semantyczne każdego identyfikatora tematu. W przypadku początkowej taksonomii interfejsu Topics w Chrome używana jest wartość 600.
Data.ext.segclass Ciąg znaków Odpowiednik: classifier_version.
Data.segment.id Ciąg znaków Odpowiednik wartości id przekształconej w ciąg znaków.

Data.ext to rozszerzenie wiadomości BidRequest.user.data. To rozszerzenie jest dostępne w otwartej wersji beta protokołu.

Oto definicja:

// Ad Exchange extensions for the Data object.
message DataExt {
  // The ID for a taxonomy that is registered centrally. Used to define the
  // namespace and semantic meaning of the segment IDs. See
  // https://github.com/InteractiveAdvertisingBureau/openrtb/blob/master/extensions/community_extensions/segtax.md#enumeration-of-taxonomies
  // for the enumeration of the taxonomies that this value can take. Currently
  // only Chrome Topics API taxonomy (segtax=600) is supported.
  optional int32 segtax = 1;

  // The version of the classifier which produced the segment IDs within the
  // taxonomy. For example, in the case of Chrome Topics API (segtax=600), this
  // is the version of the classifier used by the browser to map hostnames to
  // topics in the taxonomy.
  optional string segclass = 2;
}

Protokół RTB od Google (wycofany)

Tematy są reprezentowane w polu topics w wiadomości BidRequest. To pole jest dostępne w otwartej wersji beta protokołu.

Oto definicja:

  // Experimental field; subject to change.
  // A coarse-grained topic that a website visitor might currently be interested
  // in based on recent browsing activity. See
  // https://developer.chrome.com/docs/privacy-sandbox/topics/ and/or
  // https://privacysandbox.com/intl/en_us/proposals/topics/ for more
  // information about the Topics API. Reach out to your account manager to
  // participate in the Topics API experiment.
  message Topic {
    // The value of a topic ID. A numerical identifier corresponding to a
    // coarse-grained advertising topic. See
    // https://github.com/patcg-individual-drafts/topics/blob/main/taxonomy_v1.md
    // for a list of topics in the initial taxonomy.
    optional int32 id = 1;
    // The version of the advertising taxonomy which defines the semantic
    // meaning of each topic ID for the topics, for example "v1".
    optional string taxonomy_version = 2;
    // The version of the classifier used by the browser to map hostnames to
    // topic IDs in the taxonomy.
    optional string classifier_version = 3;
  }

  // The list of topics that a website visitor might currently be interested in
  // inferred by the browser based on recent browsing activity. See
  // https://developer.chrome.com/docs/privacy-sandbox/topics/ and/or
  // https://privacysandbox.com/intl/en_us/proposals/topics/ for more
  // information about Topics API.
  repeated Topic topics = 74;

Przykłady

Poniżej znajdziesz przykład tego, jak protokoły Google Authorized Buyers i OpenRTB reprezentują tematy zwracane przez interfejs Chrome Topics API.

Odpowiedź interfejsu Chrome Topics API zwrócona przez document.browsingTopics():

[
  {
    "modelVersion": "classifier_v1",
    "taxonomyVersion": "taxonomy_v1",
    "topic": 3
  },
  {
    "modelVersion": "classifier_v1",
    "taxonomyVersion": "taxonomy_v1",
    "topic": 44
  },
  {
    "modelVersion": "classifier_v1",
    "taxonomyVersion": "taxonomy_v1",
    "topic": 59
  }
]

OpenRTB BidRequest:

{
  "user": {
    "data": [
      {
        "ext": {
          "segtax": 600,
          "segclass": "classifier_v1"
        },
        "segment": [
          { "id": "3" },
          { "id": "44" },
          { "id": "59" }
        ]
      }
    ]
  }
}

Protokół RTB firmy Google (wycofany) BidRequest:

topics {
  id: 3
  taxonomy_version: "taxonomy_v1"
  classifier_version: "classifier_v1"
}
topics {
  id: 44
  taxonomy_version: "taxonomy_v1"
  classifier_version: "classifier_v1"
}
topics {
  id: 59
  taxonomy_version: "taxonomy_v1"
  classifier_version: "classifier_v1"
}

W przykładzie interfejsu Chrome Topics API powyżej symbol taxonomy_version oznacza, że używane jest mapowanie taxonomy_v1. Zgodnie z taksonomią te identyfikatory tematów odpowiadają tym tematom:

Identyfikator tematu Wartość tematu
3 /Sztuka i rozrywka/Komiksy
44 /Sztuka i rozrywka/Opera
59 /Samochody i inne pojazdy/Pojazdy zabytkowe

Dostępność

Obecność tematów w pytaniu o stawkę podlega istniejącym zabezpieczeniom i kontrolom prywatności. Na przykład tematy są niedostępne, jeśli użytkownik zrezygnuje z reklam spersonalizowanych lub w przypadku zasobów reklamowych reklam niespersonalizowanych.