Découvrez comment enregistrer des sources pour attribuer des clics et des vues aux événements appropriés.
Une source d'attribution est un événement lié à l'annonce (un clic ou une vue), auquel une technologie publicitaire peut joindre les types d'informations suivants : - Données de rapports contextuels, telles que l'ID de la création publicitaire, les informations sur la campagne ou la zone géographique. - Destination de la conversion telle que le site sur lequel vous souhaitez que l'utilisateur effectue une conversion.
Suivez la procédure décrite dans ce document pour enregistrer les sources (impressions ou clics d'annonces) auxquelles le navigateur attribue les conversions.
Méthodes d'enregistrement
Pour enregistrer des sources d'attribution, utilisez des éléments HTML ou des appels JavaScript:
- Balise
<a>
- Balise
<img>
- Balise
<script>
fetch
appelXMLHttpRequest
window.open
Cela génère des requêtes réseau auxquelles vous répondez ensuite avec un en-tête de réponse HTTP d'enregistrement de la source.
Enregistrer des sources pour les clics ou les vues
Pour enregistrer une source d'attribution pour les clics ou les vues, suivez les étapes indiquées ici. La procédure complète se trouve ci-après. Voici le résumé:
- Lancez l'enregistrement de la source. Utilisez un élément HTML ou un appel JavaScript pour effectuer une requête. Comme vous le verrez dans les sections suivantes, cette étape est différente pour les clics et les vues.
Terminez l'enregistrement de la source en répondant avec l'en-tête d'enregistrement de la source. À la réception de cette requête, répondez avec l'en-tête
Attribution-Reporting-Register-Source
. Dans cet en-tête, spécifiez la configuration Attribution Reporting souhaitée. Cette étape est la même pour les clics et les vues.Exemple de rapports récapitulatifs:
{ "aggregation_keys": { "campaignCounts": "0x159", "geoValue": "0x5" }, "aggregatable_report_window": "86400", "destination": "https://example.com" }
Exemple pour les rapports au niveau des événements:
{ "source_event_id": "12340873456", "destination": "[eTLD+1]", "expiry": "[64-bit signed integer]", "priority": "[64-bit signed integer]", "event_report_window": "[64-bit signed integer]" }
Attributs obligatoires et facultatifs
Lorsque vous utilisez des éléments HTML ou effectuez des appels JavaScript pour enregistrer des sources, vous devrez peut-être utiliser attributionsrc
ou attributionReporting
. Consultez le tableau suivant pour savoir dans quels cas ils sont requis.
Lorsque attributionsrc
est facultatif, son utilisation indique que la requête est éligible pour Attribution Reporting. Si vous utilisez attributionsrc
, le navigateur envoie l'en-tête Attribution-Reporting-Eligible
. Il est également utile pour la mesure entre l'application et le Web: si attributionsrc
est présent, le navigateur envoie l'en-tête Attribution-Reporting-Support
.
Méthode d'inscription | Source |
---|---|
Balise <a> |
(source de navigation)attributionsrc est obligatoire. |
Balise <img> |
(source de l'événement)attributionsrc est obligatoire. |
Balise <script> |
(source de l'événement)attributionsrc est obligatoire. |
fetch appel |
L'option attributionReporting est obligatoire. |
XMLHttpRequest
|
L'option attributionReporting est obligatoire. |
window.open()
|
(source de navigation)attributionsrc est obligatoire. |
Étape 1: Lancez l'enregistrement de la source
La première étape diffère pour les clics et les vues. Ouvrez les onglets correspondants pour chacun d'eux.
Afin d'enregistrer une source d'attribution pour un clic, vous pouvez utiliser une balise <a>
ou un window.open()
JavaScript.
Utiliser une ancre
Ajoutez attributionsrc
aux balises <a> existantes pour lesquelles vous souhaitez mesurer les impressions ou les clics:
<a href="https://shoes.example/..."
attributionsrc>Click me</a>
Pour en savoir plus, consultez l'exemple de code.
Utiliser un script
Appelez window.open()
avec attributionsrc
:
window.open(
"https://shoes.example/...",
"_blank",
"attributionsrc");
Pour être prise en compte, cette méthode doit être appelée dans les cinq secondes suivant l'interaction de l'utilisateur.
Au lieu d'ajouter attributionsrc
seul, vous pouvez spécifier une seule valeur d'URL pour une image ou un script:
<a href=... attributionsrc="https://a.example/register-source">
Dans le cas de JavaScript, si vous attribuez une valeur à attributionsrc
, veillez à encoder cette URL au cas où elle contiendrait des caractères spéciaux tels que "=", qui entraîneraient une analyse incorrecte du paramètre.
Encodez comme suit:
const encodedUrl = encodeURIComponent(
'https://adtech.example/attribution_source?ad_id=...');
window.open(
"https://shoes.example/landing",
"_blank",
attributionsrc=${encodedUrl});
attributionsrc
peut également accepter une liste d'URL séparées par des espaces, comme illustré ici avec une balise d'ancrage:
<!-- With an anchor tag -->
<a href=... attributionsrc="https://a.example/register-source
https://b.example/register-source">
ou tel qu'il est ici avec window.open()
.
// With window.open()
window.open('...', '_blank', attributionsrc=${encodedUrl1}
attributionsrc=${encodedUrl2})
Dans ce cas, les deux URL reçoivent des requêtes attributionsrc
navigation-source-eligible
(requêtes incluant l'en-tête Attribution-Reporting-Eligible
).
attributionsrc
avec ou sans valeur
Comme nous l'avons vu précédemment, vous pouvez spécifier attributionsrc
sans URL. Vous pouvez également spécifier une seule URL. En outre, pour les sources uniquement (et non pour les déclencheurs), vous pouvez utiliser une liste d'URL séparées par un espace.
L'utilisation d'URL amène le navigateur à lancer une requête de récupération distincte par message keepalive (une pour chaque URL), qui inclut l'en-tête de requête Attribution-Reporting-Eligible
.
Cela est utile si vous souhaitez effectuer l'enregistrement de la source en répondant à une requête distincte de la requête principale de l'élément.
Par exemple, si vous devez enregistrer des sources pour les clics sur un élément d'ancrage, vous ne contrôlez peut-être pas réellement la destination. Dans ce cas, vous aurez besoin d'une configuration vous permettant d'envoyer l'en-tête d'enregistrement de la source en tant que réponse à une requête distincte de la navigation et que vous pouvez contrôler entièrement. En spécifiant une valeur explicite pour attributionsrc
, vous demandez au navigateur d'effectuer cette requête supplémentaire et de configurer sa destination.
Pour l'étape 1 de l'enregistrement des vues, accédez aux onglets et sélectionnez "Views" (Vues), étape 1.
Afin d'enregistrer une source d'attribution pour une vue, vous pouvez utiliser une balise d'image ou de script à laquelle vous ajouterez l'attribut attributionsrc
.
Vous pouvez également utiliser JavaScript fetch()
ou XMLHttpRequest()
.
Avec une image
<img attributionsrc
src="https://adtech.example/attribution_source?ad_id=..."/>
Avec un script
<script attributionsrc
src="https://adtech.example/attribution_source?ad_id=..."/>
Vous pouvez éventuellement spécifier une valeur d'URL pour attributionsrc
de la même manière que pour les clics. Autrement dit, pour une image ou un script, vous pouvez définir la ou les URL attributionsrc
comme suit:
Avec une seule URL:
attributionsrc="https://adtech.example/attribution_source?ad_id=123"
Avec une liste d'URL:
attributionsrc="https://a.example/register-source
https://b.example/register-source"
Utiliser fetch()
ou XMLHttpRequest()
Ce code simule efficacement le comportement d'une requête HTML avec attributionsrc
:
// With fetch
const attributionReporting = {
eventSourceEligible: true,
triggerEligible: false,
};
// Optionally set keepalive to ensure the request outlives the page.
window.fetch("https://adtech.example/attribution_source?my_ad_id=123", {
keepalive: true, attributionReporting });
// With XHR
const attributionReporting = {
eventSourceEligible: true,
triggerEligible: false,
};
const req = new XMLHttpRequest();
req.open('GET', url);
req.setAttributionReporting(
attributionReporting);
req.send();
Pour l'étape 1 de l'enregistrement des clics, accédez aux onglets et sélectionnez "Clics" (étape 1).
Étape 2: Répondre avec un en-tête (clics et vues)
L'étape suivante pour les clics et les vues consiste à répondre avec l'en-tête Attribution-Reporting-Register-Source
.
Pour en savoir plus, consultez l'exemple de code.
À la réception de la requête du navigateur sur le serveur, répondez et incluez l'en-tête Attribution-Reporting-Register-Source
dans votre réponse.
res.set(
'Attribution-Reporting-Register-Source',
JSON.stringify({
// Use source_event_id to map it to any granular information
// you need at ad-serving time
source_event_id: '412444888111012',
destination: 'https://advertiser.example',
// Optional fields
expiry: '604800',
priority: '100',
debug_key: '122939999'
})
);
Une fois concaténé, l'en-tête se présente comme suit:
{"source_event_id":"412444888111012","destination":"https://advertiser.example","expiry":"604800","priority":"100","debug_key":"122939999"}
Étapes suivantes
Découvrez comment enregistrer des déclencheurs d'attribution.