Découvrez comment enregistrer des déclencheurs d'attribution pour comptabiliser vos conversions.
Un déclencheur d'attribution est l'événement qui indique au navigateur de capturer les conversions.
En suivant les étapes décrites dans ce document, vous pouvez enregistrer des déclencheurs afin d'enregistrer des conversions que le navigateur attribue ensuite aux événements sources pertinents, à savoir les impressions d'annonces ou les clics sur une annonce.
Méthodes d'enregistrement
Pour enregistrer des déclencheurs, utilisez des éléments HTML ou des appels JavaScript:
- Balise
<img>
- Balise
<script>
fetch
appelXMLHttpRequest
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 déclencheur.
Enregistrer un déclencheur pour attribuer une conversion
L'enregistrement d'un déclencheur est semblable à l'enregistrement d'un événement de source d'attribution. Les étapes complètes sont décrites plus loin. Voici le résumé:
- Lancez l'enregistrement du déclencheur. Utilisez un pixel ou un appel
fetch()
pour effectuer une requête. Terminez l'enregistrement du déclencheur en renvoyant l'en-tête du déclencheur.
À la réception de la requête de pixel (envoyée au point de terminaison défini dans l'attribut
src
habituel, ou au point de terminaison défini dansattributionsrc
si vous avez choisi d'utiliserattributionsrc
et que vous lui avez attribué une valeur), répondez avec l'en-têteAttribution-Reporting-Register-Trigger
.Dans cet en-tête, spécifiez les données de déclencheur que vous souhaitez afficher à terme dans les rapports. Toute réponse peut définir cet en-tête. Tant qu'il s'agit d'une réponse à une requête effectuée par un site correspondant à l'
destination
, les sources seront mises en correspondance. Une fois l'en-tête reçu, le navigateur recherche les sources correspondantes et planifie un rapport.Exemple pour les rapports au niveau des événements:
{ "event_trigger_data": [{ "trigger_data": "[unsigned 64-bit integer]", "priority": "[signed 64-bit integer]", "deduplication_key": "[unsigned 64-bit integer]" }] }
Exemple pour les rapports récapitulatifs:
{ ... // existing fields, such as "event_trigger_data" "aggregatable_trigger_data": [ { "key_piece": "0x400", "source_keys": ["campaignCounts"] }, { "key_piece": "0xA80", "source_keys": ["geoValue", "nonMatchingKeyIdsAreIgnored"] } ], "aggregatable_values": { "campaignCounts": 32768, "geoValue": 1664 } }
Gestion des sous-domaines
Si destination
est défini sur https://advertiser.example
, les conversions sur https://advertiser.example
et ses sous-domaines, tels que https://shop.advertiser.example
, peuvent être attribuées.
Si destination
est défini sur https://shop.advertiser.example
, les conversions de https://advertiser.example
et de https://shop.advertiser.example
peuvent être attribuées.
Attributs obligatoires et facultatifs
Lorsque vous utilisez des éléments HTML ou effectuez des appels JavaScript pour enregistrer des déclencheurs, vous devrez peut-être utiliser attributionsrc
ou attributionReporting
. Consultez le tableau suivant pour savoir dans quels cas elles sont requises.
Lorsque attributionsrc
est facultatif, son utilisation indique que la demande est éligible pour Attribution Reporting. Si vous utilisez attributionsrc
, le navigateur envoie l'en-tête Attribution-Reporting-Eligible
. Elle est également utile pour les mesures application/Web: si attributionsrc
est présent, le navigateur envoie l'en-tête Attribution-Reporting-Support
.
Méthode d'enregistrement | Déclencheur |
---|---|
Balise <a> |
N/A: les ancres ne peuvent pas enregistrer de déclencheur. |
Balise <img> |
attributionsrc est facultatif. L'en-tête suffit pour enregistrer un déclencheur. |
Balise <script> |
attributionsrc est facultatif. L'en-tête suffit pour enregistrer un déclencheur. |
fetch appel |
L'option attributionReporting est obligatoire. |
XMLHttpRequest |
L'option attributionReporting est obligatoire. |
window.open() |
N/A:window.open ne peut pas enregistrer de déclencheur. |
Étape 1: Lancez l'enregistrement du déclencheur
Vous pouvez enregistrer un déclencheur à l'aide d'un pixel (balise <img>
) ou d'une balise de script.
Utiliser un pixel de conversion nouveau ou existant
L'exemple suivant déclenche l'attribution sur une image existante en ajoutant l'attribut attributionsrc
.
L'origine de attributionsrc
doit correspondre à celle qui a effectué l'enregistrement de la source.
<img src="https://advertiser.example/conversionpixel"
attributionsrc="https://adtech.example/attribution_trigger?purchase=13">
L'exemple suivant déclenche l'attribution en ajoutant un attribut de pixel de conversion attributionsrc
.
L'origine de src
doit correspondre à celle qui a effectué l'enregistrement de la source.
<img src="https://adtech.example/conversionpixel"
attributionsrc>
Utiliser un tag de script
Vous pouvez enregistrer un déclencheur à l'aide d'une balise de script. Elle se comporte de la même manière que <img>
. Les exemples de code suivants illustrent l'utilisation de fetch()
et XMLHttpRequest()
(XHR).
Ce code simule efficacement le fonctionnement d'une requête HTML avec attributionsrc
:
const attributionReporting = {
eventSourceEligible: false,
triggerEligible: true,
};
// Optionally set keepalive to ensure the request outlives the page.
window.fetch("https://adtech.example/attribution_source?my_ad_id=123",
{ keepalive: true, attributionReporting });
const attributionReporting = {
eventSourceEligible: false,
triggerEligible: true,
};
const req = new XMLHttpRequest();
req.open("GET", url);
req.setAttributionReporting(attributionReporting);
req.send();
attributionsrc
avec ou sans valeur
Vous pouvez ajouter attributionsrc
avec ou sans valeur.
<!-- Without a value -->
<img src="..." width="1" height="1" attributionsrc>
<!-- With a value (URL) -->
<img src="..." width="1" height="1" attributionsrc="https://...">
Si vous définissez une valeur pour attributionsrc
, il peut s'agir d'une ou de plusieurs URL séparées par des espaces.
L'utilisation d'une URL oblige le navigateur à lancer une requête de récupération distincte (une pour chaque URL) qui inclut l'en-tête de requête Attribution-Reporting-Eligible
.
Cela est utile si vous souhaitez enregistrer le déclencheur en répondant à une requête distincte de la requête principale de l'élément.
Par exemple, si vous devez enregistrer des déclencheurs sur un élément d'image, vous ne contrôlez peut-être pas la réponse de l'image. Dans ce cas, il est préférable d'utiliser une configuration vous permettant d'envoyer l'en-tête d'enregistrement du déclencheur en réponse à une requête distincte de l'image, 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.
Étape 2: Répondre avec un en-tête
À la réception de la requête du navigateur, répondez et incluez dans votre réponse l'en-tête Attribution-Reporting-Register-Trigger
:
JSON.stringify({
event_trigger_data: [{
trigger_data: "412444888111012",
// Optional
priority: "1000000000000",
deduplication_key: "2345698765"
}],
debug_key: "1115698977"
});
Étapes suivantes
Découvrez comment enregistrer des sources d'attribution.