Registra las fuentes de atribución

Obtén información sobre cómo registrar fuentes para atribuir clics y vistas a los eventos correspondientes.

Una fuente de atribución es un evento relacionado con un anuncio (un clic o una vista) al que una tecnología publicitaria puede adjuntar los siguientes tipos de información:

  • Datos de informes contextuales, como el ID de la creatividad del anuncio, información sobre la campaña o la ubicación geográfica.
  • Es un destino de conversión, como en el sitio donde esperas que el usuario genere una conversión.

Si sigues los pasos que se indican en este documento, podrás registrar las fuentes (impresiones de anuncios o clics) a las que el navegador luego atribuirá las conversiones.

Métodos de registro

Para registrar fuentes de atribución, usa elementos HTML o llamadas de JavaScript:

  • Etiqueta <a>
  • Etiqueta <img>
  • Etiqueta <script>
  • fetch llamada
  • XMLHttpRequest
  • window.open llamada

Esto genera solicitudes de red a las que luego respondes con una fuente encabezado de respuesta HTTP de registro.

Registra fuentes para clics o vistas

Si deseas registrar una fuente de atribución para clics o vistas, sigue los pasos que se describen aquí. Siguen los pasos completos. Este es el resumen:

  1. Inicia el registro de la fuente. Usa un elemento HTML o una Llamada de JavaScript para realizar una solicitud. Este paso es diferente para los clics y las vistas, como verás en las siguientes secciones.
  2. Completa el registro de la fuente: Responde con la fuente. encabezado de registro. Cuando recibas esa solicitud, responde con el encabezado. Attribution-Reporting-Register-Source En ese encabezado, especifica el la configuración deseada de Attribution Reporting. Este paso es el mismo para los clics y las vistas.

    Ejemplo de informes de resumen:

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

    Ejemplo de informes a nivel del 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]"
    }
    

Atributos obligatorios y opcionales

Cuando usas elementos HTML o haces llamadas de JavaScript para registrar fuentes, puedes es posible que debas usar attributionsrc o attributionReporting. Consulta la siguiente tabla para obtener detalles sobre cuándo se como en los productos necesarios.

Si attributionsrc es opcional, su uso indica que la solicitud es apta para Attribution Reporting. Si usas attributionsrc, el navegador envía el Encabezado Attribution-Reporting-Eligible. También es útil para la transición de app a Web medición: Si attributionsrc está presente, el navegador envía el Encabezado Attribution-Reporting-Support.

Método de registro Origen
Etiqueta <a> (fuente de navegación)
El campo attributionsrc es obligatorio.
Etiqueta <img> (fuente del evento)
El campo attributionsrc es obligatorio.
Etiqueta <script> (fuente del evento)
El campo attributionsrc es obligatorio.
fetch llamada La opción attributionReporting es obligatorio
XMLHttpRequest La opción attributionReporting es obligatorio
window.open llamada (fuente de navegación)
El campo attributionsrc es obligatorio.

Paso 1: Inicia el registro de la fuente

El paso 1 es diferente para los clics y las vistas.

Si deseas registrar una fuente de atribución para un clic, puedes utilizar una etiqueta <a> o JavaScript. window.open()

Usa un ancla

Agregue attributionsrc a las etiquetas <a> existentes para las que desea medir impresiones o clics:

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

Revisa el código de ejemplo para obtener más información.

Uso de una secuencia de comandos

Llama a window.open() con attributionsrc:

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

Para tener en cuenta, este método debe llamarse en un plazo de 5 segundos después de la interacción del usuario.

En lugar de agregar attributionsrc solo, para una imagen o secuencia de comandos, puedes especificar un solo valor de URL:

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

En el caso de JavaScript, si asignas un valor a attributionsrc, asegúrate de que para codificar esa URL en caso de que contenga caracteres especiales, como =, que haría que el parámetro se analizara de manera incorrecta.

Codifica de la siguiente manera:

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

attributionsrc también puede tomar una lista de URLs separadas por espacios, como se muestra aquí con una etiqueta <a>:

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

o tal como está aquí con window.open().

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

En esos casos, ambas URLs recibirán attributionsrc aptas para la fuente de navegación. solicitudes (solicitudes que incluyen el encabezado Attribution-Reporting-Eligible).

attributionsrc con o sin un valor

Como viste anteriormente, puedes especificar attributionsrc sin una URL. También puedes especificar URL única. Además, puedes usar una lista de URLs separadas por espacios.

El uso de URLs hace que el navegador inicie una solicitud de recuperación de keepalive separada, una para cada URL, que incluye la solicitud Attribution-Reporting-Eligible encabezado.

Esto es útil si deseas realizar el registro de la fuente respondiendo a un independiente de la principal del elemento.

Por ejemplo, si necesitas registrar fuentes para hacer clics en un elemento de anclaje, es posible que, en realidad, no tenga el control del destino; en este caso, querrás una configuración mediante la cual envías el encabezado de registro de la fuente como una respuesta a una solicitud independiente de la navegación y que se puede controlar por completo. De si especificas un valor explícito para attributionsrc, le indicarás a la para realizar la solicitud adicional y configurar su destino.

Si quieres registrar una fuente de atribución para una vista, puedes usar una etiqueta de imagen o secuencia de comandos a la que agregarás el atributo attributionsrc.

Como alternativa, puedes usar JavaScript fetch() o XMLHttpRequest().

Con una imagen

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

Con un guion

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

También puedes especificar un valor de URL para attributionsrc del mismo modo que para clics; es decir, para una imagen o secuencia de comandos , puedes configurar la o las URLs attributionsrc de la siguiente manera:

Con una sola URL:

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

Con una lista de URLs:

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

Usa fetch() o XMLHttpRequest()

Este código simula de forma eficaz lo que haría una solicitud 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();

Paso 2: Responde con un encabezado (clics y vistas)

El siguiente paso para los clics y las vistas es responder con el encabezado Attribution-Reporting-Register-Source.

Revisa el código de ejemplo para obtener más información.

Al recibir la solicitud del navegador en el servidor, responde e inclúyela en a tu respuesta, el encabezado 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 vez que se convierta en string, el encabezado se verá de la siguiente manera:

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

Próximos pasos

Obtén información para registrar activadores de atribución.