Registra le origini di attribuzione

Scopri come registrare le sorgenti per attribuire clic e visualizzazioni agli eventi appropriati.

Un'origine di attribuzione è un evento relativo all'annuncio (un clic o una visualizzazione) a cui un ad tech può allegare i seguenti tipi di informazioni:

  • Dati dei report contestuali, ad esempio l'ID creatività dell'annuncio, informazioni sulla campagna o area geografica.
  • Una destinazione di conversione, come il sito in cui prevedi che l'utente effettui una conversione.

Seguendo la procedura descritta in questo documento, puoi registrare le origini, cioè impressioni degli annunci o clic, a cui il browser attribuisce le conversioni.

Metodi di registrazione

Per registrare le origini dell'attribuzione, utilizza gli elementi HTML o le chiamate JavaScript:

  • Tag <a>
  • Tag <img>
  • Tag <script>
  • fetch chiamata
  • XMLHttpRequest
  • window.open chiamata

Questa operazione genera richieste di rete a cui rispondi con un'origine intestazione della risposta HTTP della registrazione.

Registra le sorgenti per clic o visualizzazioni

Per registrare un'origine di attribuzione per i clic o le visualizzazioni, procedi come indicato di seguito. Segui la procedura completa. Ecco il riepilogo:

  1. Avvia la registrazione di origine. Utilizza un elemento HTML o un a JavaScript per effettuare una richiesta. Questo passaggio è diverso per i clic e le visualizzazioni, come noterai nelle sezioni seguenti.
  2. Completa la registrazione dell'origine rispondendo alla fonte intestazione registrazione. Dopo aver ricevuto la richiesta, rispondi con l'intestazione Attribution-Reporting-Register-Source. Nell'intestazione, specifica alla configurazione di Attribution Reporting desiderata. Questo passaggio è lo stesso per i clic e le visualizzazioni.

    Esempio per i report di riepilogo:

    {
      "aggregation_keys": {
        "campaignCounts": "0x159",
        "geoValue": "0x5"
      },
      "aggregatable_report_window": "86400",
      "destination": "https://example.com"
    }
    

    Esempio di report a livello di evento:

    {
      "source_event_id": "12340873456",
      "destination": "[eTLD+1]",
      "expiry": "[64-bit signed integer]",
      "priority": "[64-bit signed integer]",
      "event_report_window": "[64-bit signed integer]"
    }
    

Attributi obbligatori e facoltativi

Quando utilizzi elementi HTML o effettui chiamate JavaScript per registrare sorgenti, potrebbe essere necessario usare attributionsrc o attributionReporting. Consulta la tabella seguente per maggiori dettagli su quando vengono obbligatorio.

Quando attributionsrc è facoltativo, il suo utilizzo indica che la richiesta è idonea per Attribution Reporting. Se utilizzi attributionsrc, il browser invia l'errore Intestazione Attribution-Reporting-Eligible. È utile anche per il passaggio misurazione: se è presente attributionsrc, il browser invia Intestazione Attribution-Reporting-Support.

Metodo di registrazione Origine
Tag <a> (origine navigazione)
Il campo attributionsrc è obbligatorio.
Tag <img> (origine evento)
Il campo attributionsrc è obbligatorio.
Tag <script> (origine evento)
Il campo attributionsrc è obbligatorio.
fetch chiamata L'opzione attributionReporting è obbligatorio.
XMLHttpRequest L'opzione attributionReporting è obbligatorio.
window.open chiamata (origine navigazione)
attributionsrc è obbligatorio.

Passaggio 1: avvia la registrazione alla fonte

Il passaggio 1 è diverso per i clic e le visualizzazioni.

Per registrare un'origine di attribuzione per un clic, puoi utilizzare un tag <a> o JavaScript window.open().

Utilizzare un ancoraggio

Aggiungi attributionsrc ai tag <a> esistenti per i quali vuoi misurare le impressioni o i clic:

<a href="https://shoes.example/..." attributionsrc>Click me</a>

Per ulteriori informazioni, consulta l'esempio di codice.

Uso di uno script

Chiama window.open() con attributionsrc:

window.open(
  "https://shoes.example/...",
  "_blank",
  "attributionsrc");

Per essere preso in considerazione, questo metodo deve essere chiamato entro 5 secondi dall'interazione dell'utente.

Anziché aggiungere attributionsrc da solo, per un'immagine o uno script puoi specificare un singolo valore URL:

<a href=... attributionsrc="https://a.example/register-source">Click me</a>

Nel caso JavaScript, se assegni un valore a attributionsrc, assicurati per codificare l'URL nel caso in cui contenga caratteri speciali come = che il parametro non viene analizzato correttamente.

Codifica come segue:

const encodedUrl = encodeURIComponent(
  "https://adtech.example/attribution_source?ad_id=...");
window.open(
  "https://shoes.example/landing",
   "_blank",
   `attributionsrc=${encodedUrl}`);

attributionsrc può anche utilizzare un elenco di URL separati da spazi, come illustrato qui con un tag <a>:

<a href=... attributionsrc="https://a.example/register-source
  https://b.example/register-source">Click me</a>

o come è qui, utilizzando window.open().

window.open("...", "_blank", `attributionsrc=${encodedUrl1}
  attributionsrc=${encodedUrl2}`)

In questi casi, entrambi gli URL ricevono attributionsrc idonei per le sorgenti di navigazione (richieste che includono l'intestazione Attribution-Reporting-Eligible).

attributionsrc con o senza un valore

Come indicato in precedenza, puoi specificare attributionsrc senza un URL. Puoi anche specificare singolo URL. Inoltre, puoi utilizzare un elenco di URL separati da spazi.

Se utilizzi gli URL, il browser avvia una richiesta di recupero keepalive separata: una per ogni URL, che include la richiesta Attribution-Reporting-Eligible intestazione.

È utile se vuoi effettuare la registrazione di origine rispondendo a un separata da quella principale dell'elemento.

Ad esempio, se devi registrare le sorgenti per i clic su un elemento anchor, potresti non avere il controllo della destinazione; In questo caso ti consigliamo di una configurazione in cui invii l'intestazione della registrazione di origine in risposta a una richiesta separato dalla navigazione e che puoi controllare completamente. Di specificando un valore esplicito per attributionsrc, indichi browser per effettuare questa richiesta aggiuntiva e configurare la sua destinazione.

Per registrare un'origine di attribuzione per una vista, puoi utilizzare un tag immagine o script a cui aggiungere l'attributo attributionsrc.

In alternativa, puoi utilizzare JavaScript fetch() o XMLHttpRequest().

Con un'immagine

<img attributionsrc
src="https://adtech.example/attribution_source?ad_id=...">

Con uno script

<script attributionsrc
  src="https://adtech.example/attribution_source?ad_id=..."></script>

Facoltativamente, puoi specificare un valore URL per attributionsrc come per clic; In altre parole, per un'immagine o uno script , puoi impostare l'URL o gli URL attributionsrc in questo modo:

Con un singolo URL:

<img attributionsrc="https://adtech.example/attribution_source?ad_id=123">

Con un elenco di URL:

<img attributionsrc="https://a.example/register-source
  https://b.example/register-source">

In uso: fetch() o XMLHttpRequest()

Questo codice simula in modo efficace ciò che fa una richiesta HTML con attributionsrc:

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 });
const attributionReporting = {
  eventSourceEligible: true,
  triggerEligible: false,
};

const req = new XMLHttpRequest();
req.open("GET", url);
req.setAttributionReporting(attributionReporting);
req.send();

Passaggio 2: rispondi con l'intestazione (clic e visualizzazioni)

Il passaggio successivo sia per i clic che per le visualizzazioni è rispondere con l'intestazione Attribution-Reporting-Register-Source.

Per ulteriori informazioni, consulta l'esempio di codice.

Dopo aver ricevuto la richiesta del browser sul server, rispondi e includi la tua risposta, l'intestazione Attribution-Reporting-Register-Source.

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"
  })
);

Una volta inserita la stringa, l'intestazione avrà il seguente aspetto:

{"source_event_id":"412444888111012","destination":"https://advertiser.example","expiry":"604800","priority":"100","debug_key":"122939999"}

Passaggi successivi

Scopri come registrare gli attivatori di attribuzione.