Implementa acuerdos, también conocidos como mercado privado (PMP), en una subasta de Protected Audience
Descripción general
Los acuerdos, también conocidos como mercado privado (PMP), ofrecen acceso seleccionado o precio preferido a los compradores en un subconjunto de inventario. Para facilitar las transacciones programáticas, se usan IDs de asiento y IDs de transacción:
- Un ID de asiento proviene del comprador y es un identificador que representa al cliente del comprador. Un ID de licencia puede tener implicaciones en la facturación, por ejemplo, si una licencia tiene un descuento con un vendedor determinado.
- Un ID de transacción proviene del comprador o del vendedor y es un identificador que representa un acuerdo entre un comprador y un vendedor. Un ID de acuerdo puede tener propiedades como un costo o precio, un compromiso de volumen, información del público, exclusividad y mucho más.
Protected Audience facilita los acuerdos mediante el uso de IDs de informes, lo que permite que los IDs de asientos y acuerdos estén disponibles para las ofertas de subasta, la puntuación y los informes. Los IDs de informes proporcionan un mecanismo para que las empresas de tecnología publicitaria reciban estos IDs de acuerdos y licencias en los informes de Protected Audience posteriores a la subasta para negociar acuerdos y organizar las iniciativas de facturación. Esperamos que los compradores, vendedores, agencias y anunciantes tengan estrategias personalizadas para interpretar y comprender los IDs de licencias y acuerdos que reciben.
Explicación
Los pasos para facilitar los acuerdos en una subasta de Protected Audience son los siguientes:
- El comprador registra los IDs de acuerdo y licencia en la configuración del grupo de interés antes de que se ejecute la subasta.
- Los IDs de oferta y de asiento se pueden establecer en el campo IDs de informes seleccionables (
selectableBuyerAndSellerReportingIds
). - Si el ID de licencia es el mismo para todos los acuerdos, este se puede establecer en
buyerAndSellerReportingId
, así como en el campo de IDs de informes seleccionables (selectableBuyerAndSellerReportingIds
).
- Los IDs de oferta y de asiento se pueden establecer en el campo IDs de informes seleccionables (
- Durante la generación de ofertas, los IDs de los acuerdos y los asientos estarán disponibles. El comprador selecciona un ID de acuerdo de
selectableBuyerAndSellerReportingIds
. El comprador genera una oferta que incluye un ID de acuerdo asociado con esa oferta mostrando unselectedBuyerAndSellerReportingId
. Una oferta solo puede ganar la subasta si el ID del acuerdo que se muestra es k-anónimo junto con otros IDs de informes y si selecciona propiedades del grupo de interés. - Durante la puntuación de anuncios, los IDs de la oferta y el asiento seleccionados estarán disponibles para el vendedor.
- Los IDs del acuerdo y del asiento estarán disponibles en las funciones de informes del vendedor.
- Los IDs del acuerdo y del asiento estarán disponibles en las funciones de informes del comprador.
1. Registro de IDs de acuerdos y asientos
El comprador registra los IDs de acuerdo y licencia en la configuración del grupo de interés antes de que se ejecute la subasta. Los IDs de acuerdo y licencia se establecen en selectableBuyerAndSellerReportingIds
como un array de cadenas. Si el ID de asiento es el mismo para todas las ofertas y no es necesario repetirlo, se puede agregar en el campo buyerAndSellerReportingId
, que acepta una cadena:
const interestGroupConfig = {
owner: 'https://buyer.example',
name: 'example-ig',
ad: [
{
renderURL: 'https://buyer.example/ad.html',
selectableBuyerAndSellerReportingIds: ['deal123', 'deal456', 'deal789'], // Deal IDs
buyerAndSellerReportingId: 'seat123', // Seat ID
// Though it is not used to facilitate deals, the buyer
// reporting ID can be defined with other reporting IDs
buyerReportingId: 'brid123'
},
],
};
navigator.joinAdInterestGroup(interestGroupConfig);
Si el ID de licencia es diferente para los acuerdos, se puede usar la siguiente configuración:
const interestGroupConfig = {
owner: 'https://buyer.example',
name: 'example-ig',
ad: [
{
renderURL: 'https://buyer.example/ad.html',
selectableBuyerAndSellerReportingIds: [
'deal123seat123',
'deal456seat456',
'deal789seat456'
], // Deal and Seat IDs
},
],
};
navigator.joinAdInterestGroup(interestGroupConfig);
2. IDs de ofertas y asientos para compradores durante la generación de ofertas
Durante la generación de ofertas, el comprador decide si quiere ofertar por un ID de acuerdo. En generateBid()
, el comprador puede seleccionar un ID de oferta de selectableBuyerAndSellerReportingIds
y mostrar el valor como selectedBuyerAndSellerReportingId
. Se rechaza la oferta si el ID del acuerdo seleccionado no está en el array selectableBuyerAndSellerReportingIds
.
function generateBid(interestGroup, ...) {
const [{
buyerAndSellerReportingId, // 'seat123'
selectableBuyerAndSellerReportingIds // ['deal123', 'deal456', 'deal789']
buyerReportingId // 'brid123' - Not used for deals, but the value is available
}] = interestGroup.ads;
// ...
return {
bid: 1,
render: 'https://buyer.example/ad.html',
selectedBuyerAndSellerReportingId: 'deal456', // Buyer selects a deal ID
};
}
Una oferta con un valor mostrado para selectedbuyerAndSellerReportingId
solo puede ganar la subasta si el valor de selectedbuyerAndSellerReportingId
es en conjunto k-anónimo junto con buyerAndSellerReportingId
(si está presente), buyerReportingId
(si está presente) el propietario del grupo de interés, la URL de la secuencia de comandos de licitación, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación al menos hasta el 1er trim. de 2025).
Incluso si selectablebuyerAndSellerReportingIds
se define en la configuración del grupo de intereses, generateBid()
sigue siendo válido para mostrar una oferta que no incluya un selectedbuyerAndSellerReportingId
. En este caso, los IDs de informe que se proporcionan a las funciones de informes si esta oferta gana seguirán el comportamiento de ID de informe no seleccionable.
En los casos en que se vuelva a ejecutar generateBid()
porque la invocación inicial no produjo ninguna oferta con anuncios que hayan aprobado las verificaciones de k-anonimato, los selectableBuyerAndSellerReportingIds
que no aprueben la verificación de k-anonimato no estarán presentes en el grupo de intereses en la nueva ejecución.
3. IDs de acuerdos y compradores para vendedores durante la puntuación de anuncios
scoreAd()
puede acceder al ID del acuerdo seleccionado, junto con el ID de licencia si está presente. El vendedor proporciona la puntuación de deseabilidad de la oferta ganadora teniendo en cuenta el ID del acuerdo y cualquier término especial. Si el vendedor no cree que se aplique el ID de acuerdo que eligió el comprador, rechazará la oferta y le asignará una puntuación de deseabilidad cero o negativa.
function scoreAd(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds, // 'deal456'
} = browserSignals;
// ...
}
4. IDs de acuerdos y licencias para los informes de vendedores
Recuerda que una oferta solo puede ganar la subasta si selectedBuyerAndSellerReportingId
, buyerAndSellerReportingId
(si está presente) y buyerReportingId
(si está presente) son 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). Por lo tanto, los valores de ID de informes que incluyan un selectedBuyerAndSellerReportingId
estarán siempre disponibles dentro de reportResult()
. Ten en cuenta que, aunque se verifica buyerReportingId
para la anonimidad k, el valor solo está disponible para la función de informes del comprador y no para la función de informes del vendedor.
function reportResult(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds // 'deal456'
} = browserSignals;
// ...
}
5. IDs de acuerdos y licencias para los informes de compradores
El mismo concepto de los informes de vendedores se aplica a los informes de compradores. Recuerda que una oferta solo puede ganar la subasta si selectedBuyerAndSellerReportingId
, buyerAndSellerReportingId
(si está presente) y buyerReportingId
(si está presente) son k-anónimas con el propietario del grupo de interés, la URL de la secuencia de comandos de licitación, la URL de renderización y el tamaño del anuncio (el tamaño del anuncio se excluye de esta verificación al menos hasta el primer trimestre de 2025). Por lo tanto, los valores de ID de informes que incluyan un selectedBuyerAndSellerReportingId
siempre estarán disponibles dentro de reportWin()
.
function reportWin(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingId // 'deal456'
buyerReportingId // 'brid123' - Not used for deals, but the value is available
} = browserSignals;
}
Interactúa y comparte comentarios
- Para obtener más información sobre los IDs de informe, consulta la sección ID de informe de la explicación de Protected Audience.
- GitHub: Formula preguntas y sigue el debate sobre los problemas en el repositorio de la API.
- W3C: Conversar sobre casos de uso del sector en la llamada de WICG
- Avisos: Únete a la lista de distribución o ábrela.
- Asistencia para desarrolladores de Privacy Sandbox: Haz preguntas y únete a debates en el repositorio de asistencia para desarrolladores de Privacy Sandbox.
- Chromium: Informa un error en Chromium y haz preguntas sobre la implementación disponible para probar en Chrome.