IDs de informes

Descubre cómo funcionan los IDs de informes en una subasta de Protected Audience

Descripción general

Los IDs de informes son identificadores asociados con un anuncio que están disponibles para generar una oferta, calificarla y generar informes. El comprador proporciona los IDs de informes en la configuración del grupo de intereses, y estos estarán disponibles en generateBid(), scoreAd(), reportResult() y reportWin() en varias condiciones que se analizan en esta guía.

Los IDs de informes te permiten informar un identificador de un anuncio y también habilitar casos de uso como las ofertas.

Los IDs de informes estarán disponibles para las funciones de comprador y vendedor de Protected Audience
Disponibilidad de los IDs de informes

Existen tres IDs de informes de dos tipos:

  • IDs de informes no seleccionables
    • buyerReportingId (una cadena)
    • buyerAndSellerReportingId (una cadena)
  • IDs de informes seleccionables
    • selectableBuyerAndSellerReportingIds (un array de cadenas)

Los IDs de informes se comportan de manera diferente según si se usan IDs de informes seleccionables. Cuando solo se usan IDs de informes que no se pueden seleccionar, esos IDs solo estarán disponibles dentro de las funciones de informes. Cuando se usan IDs de informes seleccionables, junto con IDs de informes no seleccionables si es necesario, todos los IDs definidos también estarán disponibles en generateBid() y scoreAd().

IDs de informes que no se pueden seleccionar

Los IDs de informes estarán disponibles para las funciones de comprador y vendedor de Protected Audience
Disponibilidad de los IDs de informes seleccionables

buyerReportingId y buyerAndSellerReportingId son IDs de informes no seleccionables definidos en la configuración del grupo de intereses que están disponibles en las funciones de informes del comprador y del vendedor. Las funciones de informes del comprador y del vendedor solo se ejecutarán para el anuncio ganador, y las funciones recibirán los IDs de informes definidos para ese anuncio ganador.

Cuando se usa sin IDs de informes seleccionables, la función de informes del comprador recibe buyerReportingId o buyerAndSellerReportingId según el comportamiento de reemplazo, y la función de informes del vendedor recibe buyerAndSellerReportingId. Si no se definen buyerReportingId ni buyerAndSellerReportingId en la configuración del grupo de intereses, la función reportWin() recibe el nombre del grupo de intereses (interestGroupName) de la oferta ganadora.

Los IDs no seleccionables no están disponibles en generateBid() y scoreAd() si no se usan junto con IDs de informes seleccionables.

IDs de informes en los grupos de interés

El comprador define los IDs de informes para cada anuncio de un grupo de interés:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    // buyerAndSellerReportingId goes to the buyer and seller reporting functions
    buyerAndSellerReportingId: 'bsrid123',
    // buyerReportingId is defined here as an example, but
    // is not used due to the overwrite rules described later
    buyerReportingId: 'brid123',
  }]
});

Informes del vendedor

Durante la fase de informes del vendedor, el valor buyerAndSellerReportingId estará disponible para reportResult():

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

Antes de que el ID esté disponible en reportResult(), se verifica el k-anonimato con el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025). Si no es k-anónima, la función reportResult() se ejecutará de todos modos, pero el valor del ID de informe no estará disponible dentro de la función.

Informes de compradores

Durante la fase de informes del comprador de la subasta, un ID de informe estará disponible para reportWin(). Si se define más de un ID de informe en el grupo de intereses, se aplica una regla de reemplazo en la que buyerAndSellerReportingId reemplaza a buyerReportingId:

  • Si se definen buyerAndSellerReportingId y buyerReportingId, buyerAndSellerReportingId reemplazará a buyerReportingId y buyerAndSellerReportingId estará disponible dentro de reportWin().
  • Si solo se define buyerReportingId, buyerReportingId estará disponible.
  • Si no se definen buyerAndSellerReportingId ni buyerReportingId, interestGroupName estará disponible.
function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

El ID de informe que se vuelve disponible dentro de reportWin() se verifica para el k-anonimato con el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025). Si no pasa la verificación de k-anonimato, reportWin() se ejecutará de todos modos, pero el valor del ID de informe no estará disponible dentro de la función.

Solo se define buyerReportingId

Si solo se define buyerReportingId en la configuración del grupo de intereses, haz lo siguiente:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
  }]
});

Luego, buyerReportingId está disponible dentro de reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
  } = browserSignals;
}

Antes de estar disponible para reportWin(), se verifica que buyerReportingId tenga k-anonimato con el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025).

Solo se define buyerAndSellerReportingId

Si solo se define buyerAndSellerReportingId en la configuración del grupo de intereses, haz lo siguiente:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

Luego, buyerAndSellerReportingId está disponible dentro de reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

Antes de estar disponible para reportWin(), se verifica que buyerAndSellerReportingId tenga k-anonimato con el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025).

Se definen buyerAndSellerReportingId y buyerReportingId

Si se definen buyerAndSellerReportingId y buyerReportingId en la configuración del grupo de intereses, haz lo siguiente:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

Entonces, solo buyerAndSellerReportingId está disponible dentro de reportWin() debido al comportamiento de reemplazo:

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

Antes de estar disponible para reportWin(), se verifica que buyerAndSellerReportingId tenga k-anonimato con el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025).

No se definen buyerAndSellerReportingId ni buyerReportingId.

Si no se definen ninguno de los IDs de informes en la configuración del grupo de intereses, ocurrirá lo siguiente:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
  }]
});

Luego, el grupo de intereses name estará disponible dentro de reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    interestGroupName, // 'example-interest-group'
  } = browserSignals;
}

Antes de estar disponible para reportWin(), se verifica el nombre del grupo de intereses (interestGroupName) para comprobar si cumple con el principio de k-anonimato con el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025).

IDs de informes seleccionables

Los IDs de informes estarán disponibles para las funciones de comprador y vendedor de Protected Audience
Disponibilidad de los IDs de informe con un ID de informe seleccionable

Los IDs de informe seleccionables permiten que un comprador seleccione un ID durante la generación de ofertas, y el navegador pone el valor seleccionado a disposición de scoreAd() y las funciones de informes. El valor selectableBuyerAndSellerReportingIds, que es un array de cadenas, se proporciona a generateBid(), y el comprador puede mostrar un ID seleccionado como selectedBuyerAndSellerReportingId.

Las funciones generateBid() y scoreAd() se ejecutarán para cada anuncio definido en la configuración del grupo de intereses y recibirán los IDs de informes de cada anuncio. Las funciones de informes del comprador y del vendedor solo se ejecutarán para el anuncio ganador, y las funciones recibirán los IDs de informes definidos para ese anuncio ganador.

Cuando los IDs de informes no seleccionables se usan junto con los IDs de informes seleccionables, su comportamiento cambia del flujo de trabajo descrito en la sección anterior. A diferencia del comportamiento inicial de los IDs de informes no seleccionables que solo están disponibles dentro de las funciones de informes, los IDs de informes seleccionables permiten que los IDs de informes no seleccionables también estén disponibles en generateBid() y scoreAd().

.

Grupo de interés

El campo de IDs de informes seleccionables (selectableBuyerAndSellerReportingIds) es un array de cadenas que define el comprador en el grupo de intereses de un anuncio. Los IDs de informes no seleccionables también se pueden definir junto con los IDs de informes seleccionables:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
    selectableBuyerAndSellerReportingIds: ['sbsrid1', 'sbsrid2', 'sbsrid3']
  }]
});

Generación de ofertas del comprador

Si se definió selectableBuyerAndSellerReportingIds en la configuración del grupo de intereses, estará disponible en generateBid() junto con otros IDs de informes que se hayan definido.

function generateBid(interestGroup, ...) {
  const [{
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectableBuyerAndSellerReportingIds // ['sbsrid1', 'sbsrid2', 'sbsrid3']
  }] = interestGroup.ads;

  return {
    bid: 1,
    render: 'https://buyer.example/ad.html',
    selectedBuyerAndSellerReportingId: 'sbsrid2' // Buyer returns the selected ID
  };
}

El comprador puede elegir uno de los IDs del array selectableBuyerAndSellerReportingIds en generateBid() y mostrar el ID seleccionado como selectedBuyerAndSellerReportingId. La oferta se rechaza si el valor seleccionado no está en el array selectableBuyerAndSellerReportingIds. Si selectableBuyerAndSellerReportingIds se define en la configuración del grupo de intereses y el comprador no muestra selectedBuyerAndSellerReportingId desde generateBid(), los IDs de informe volverán al comportamiento descrito para los IDs de informe no seleccionables.

Una oferta con un valor que se muestra para selectedbuyerAndSellerReportingId solo puede ganar la subasta si el valor de selectedbuyerAndSellerReportingId es conjuntamente k-anónima junto con buyerAndSellerReportingId (si está presente), buyerReportingId (si está presente), el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025).

Calificación de los anuncios del vendedor

Para el vendedor, el selectedBuyerAndSellerReportingId que devolvió el comprador desde generateBid() estará disponible en scoreAd(), junto con buyerAndSellerReportingId si se definió en la configuración del grupo de intereses.

function scoreAd(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId, // 'sbsrid2'
  } = browserSignals;

  // ...
}

Informes del vendedor

En el caso de los informes del vendedor, el selectedBuyerAndSellerReportingId que devolvió el comprador desde generateBid() estará disponible en reportResult(), junto con buyerAndSellerReportingId, si se definió en el grupo de intereses.

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;
  
  // ...
}

Si se definió selectableBuyerAndSellerReportingIds en la configuración del grupo de intereses y se devolvió selectedBuyerAndSellerReportingId desde generateBid(), no se puede ganar la subasta, a menos que selectedBuyerAndSellerReportingId y buyerAndSellerReportingId (si están presentes) sean k-anónimas con el propietario del grupo de intereses, la URL de la secuencia de comandos de ofertas, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación hasta, al menos, el 1ᵉʳ trimestre de 2025), y reportResult() no se ejecutará para esa oferta. Por lo tanto, si se llama a reportResult() con un valor para selectedBuyerAndSellerReportingId, significa que los IDs de informes pasaron la verificación de k-anonimato y todos los IDs de informes definidos estarán disponibles dentro de reportResult().

Informes de compradores

Si se definió selectableBuyerAndSellerReportingIds en la configuración del grupo de interés y se mostró selectedBuyerAndSellerReportingId desde generateBid(), todos los IDs de informes que se definieron en la configuración del grupo de interés estarán disponibles. Ten en cuenta que, al igual que con los informes del vendedor, si los IDs de informes no son k-anónimos, no pueden ganar la subasta y reportWin() no se ejecutará para esa oferta.

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;

  // ...
}

Reglas de reemplazo

A continuación, resumimos las reglas de reemplazo para los IDs de informes no seleccionables y los seleccionables. El navegador determina cuál de selectableBuyerAndSellerReportingIds, buyerAndSellerReportingId, buyerReportingId y el nombre del grupo de intereses se pasa a reportWin() con la siguiente lógica:

  • Si se muestra selectedBuyerAndSellerReportingId de una oferta, selectedBuyerAndSellerReportingId, buyerAndSellerReportingId (si se define en el grupo de intereses) y buyerReportingId (si se define en el grupo de intereses) están disponibles para los informes.
  • De lo contrario, si se define buyerAndSellerReportingId en el grupo de intereses, solo buyerAndSellerReportingId estará disponible para los informes.
  • De lo contrario, si se define buyerReportingId en el grupo de intereses, solo buyerReportingId estará disponible para los informes.
  • De lo contrario, solo el grupo de interés name estará disponible para generar informes.

En la siguiente tabla, se describe el comportamiento de reemplazo:

¿Los IDs de informes están definidos en la configuración del grupo de intereses? IDs de informes disponibles
selectableBuyerAnd
SellerReportingIds
buyerAndSeller
ReportingId
buyerReportingId reportWin() reportResult()
y seleccioné
en generateBid()
Opcional Opcional 1) selectedBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(si está definido)

3) buyerReportingId (si está definido)
1) selectedBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(si está definido)

No, o no seleccionado
en generateBid()
Ignorada buyerAndSeller
ReportingId
buyerAndSeller
ReportingId
No, o no seleccionado
en generateBid()
No buyerReportingId Ninguno
No, o no se seleccionó
en generateBid()
No No interestGroupName Ninguno

Interactúa y comparte comentarios