Test Topics Chrome pour le RTB

Dans le cadre de la Privacy Sandbox, Chrome a proposé l'API Topics expérimentale. L'API Topics fournit aux appelants tiers sur la page Web (y compris les fournisseurs de technologies publicitaires) des thèmes publicitaires généraux qui pourraient intéresser le visiteur de la page. Les thèmes peuvent compléter les informations contextuelles sur la page actuelle et être utiles pour la publicité basée sur les centres d'intérêt.

Le test de l'API Topics est disponible pour les partenaires RTB dans les demandes d'enchères. Les thèmes sont envoyés à tous les partenaires RTB en fonction de leur disponibilité.

Représentation des demandes d'enchères

Protocole OpenRTB

Les thèmes sont représentés sous forme de segments dans le message OpenRTB BidRequest.user.data.

Champ Type Description
Data.ext.segtax Nombre entier ID d'une taxonomie enregistrée de manière centralisée. Pour les thèmes, il s'agit de la version de la taxonomie publicitaire qui définit la signification sémantique de chaque ID de thème. 600 est utilisé pour la taxonomie initiale de Topics dans Chrome.
Data.ext.segclass Chaîne Équivaut à classifier_version.
Data.segment.id Chaîne Équivaut à id converti en chaîne.

Data.ext est une extension du message BidRequest.user.data. Cette extension est disponible dans la version bêta ouverte du protocole.

Voici la définition :

// 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;
}

Protocole Google RTB (obsolète)

Les sujets sont représentés dans le champ topics du message BidRequest. Ce champ est disponible dans la version bêta ouverte du protocole.

Voici la définition :

  // 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;

Exemples

Voici un exemple de la façon dont les protocoles Google Authorized Buyers et OpenRTB représentent les thèmes renvoyés par l'API Chrome Topics.

Réponse de l'API Topics de Chrome, renvoyée par 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" }
        ]
      }
    ]
  }
}

Protocole Google RTB (obsolète) 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"
}

Dans l'exemple d'API Topics de Chrome ci-dessus, taxonomy_version implique que le mapping taxonomy_v1 est utilisé. D'après la taxonomie, ces ID de thèmes correspondent aux thèmes suivants :

ID du sujet Valeur du thème
3 /Arts & Entertainment/Comics
44 /Arts & Entertainment/Opera
59 /Autos & Vehicles/Classic Vehicles

Disponibilité

La présence de thèmes dans la demande d'enchères est soumise aux protections et aux contrôles de confidentialité existants. Par exemple, les thèmes ne sont pas disponibles si l'utilisateur désactive la publicité personnalisée ou dans l'inventaire des annonces non personnalisées.