Define los datos del público

Aprende a definir un público creando un grupo de interés con la API de Protected Audience. Lee la guía para desarrolladores para conocer el ciclo de vida completo de la API de Protected Audience y consulta la explicación de la API de Protected Audience para obtener una propuesta detallada sobre cómo los navegadores registran los grupos de interés.

¿No eres desarrollador? Consulta la descripción general de la API de Protected Audience.

Grupos de interés de la API de Protected Audience

Un grupo de interés de la API de Protected Audience representa un grupo de personas con un interés común, que corresponde a una lista de remarketing. Cada grupo de interés de la API de Protected Audience tiene un propietario.

Los propietarios de grupos de interés actúan como compradores en la subasta de anuncios de la API de Protected Audience. El navegador almacena la membresía del grupo de intereses en el dispositivo del usuario y no la comparte con el proveedor del navegador ni con nadie más.

Funciones de la API

joinAdInterestGroup()

La plataforma orientada a la demanda (DSP) del anunciante o el anunciante mismo llama a navigator.joinAdInterestGroup() para pedirle al navegador que agregue un grupo de interés a la lista de membresías del navegador.

El origen del contexto de llamada para joinAdInterestGroup() debe coincidir con el origen del propietario del grupo de interés, por lo que se deberá llamar a joinAdInterestGroup() desde un iframe (por ejemplo, desde una DSP), a menos que el origen del propietario del grupo de interés coincida con el origen del documento actual (por ejemplo, un sitio web con sus propios grupos de interés).

joinAdInterestGroup() requiere permiso de lo siguiente:

Esto significa que malicious.example no puede llamar a joinAdInterestGroup() para un grupo de interés que pertenece a dsp.example.com sin que dsp.example.com otorgue permiso.

Permiso del sitio visitado

El permiso se puede otorgar desde el mismo origen o desde un origen cruzado. De forma predeterminada, se otorga permiso para las llamadas a joinAdInterestGroup() desde el mismo origen que el sitio visitado (en otras palabras, desde el mismo origen que el marco de nivel superior de la página actual).

Ejemplo de uso

A continuación, se muestra un ejemplo de cómo se podría definir un grupo de interés y pedirle al navegador que se una al grupo.

const interestGroup = {
  owner: 'https://dsp.example',
  name: 'custom-bikes',
  biddingLogicUrl: ...,
  biddingWasmHelperUrl: ...,
  updateUrl: ...,
  trustedBiddingSignalsUrl: ...,
  trustedBiddingSignalsKeys: ['key1', 'key2'],
  userBiddingSignals: {...},
  ads: [bikeAd1, bikeAd2, bikeAd3],
  adComponents: [customBike1, customBike2, bikePedal, bikeFrame1, bikeFrame2],
};

navigator.joinAdInterestGroup(interestGroup, 7 * kSecsPerDay);

El objeto interestGroup que se pasa a la función no debe tener un tamaño superior a 50 KiB; de lo contrario, la llamada fallará. El segundo parámetro especifica la duración del grupo de interés, con un límite de 30 días. Las llamadas sucesivas reemplazan los valores almacenados previamente.

Propiedades obligatorias

Las únicas propiedades obligatorias para los grupos de interés son owner y name:

Propiedad Ejemplo Rol
owner https://dsp.example Es el origen del propietario del grupo de interés.
name custom-bikes Es el nombre del grupo de interés.

Propiedades opcionales

Las propiedades restantes son opcionales:

biddingLogicUrl1, 2
Ejemplo: https://dsp.example/bid/custom-bikes/bid.js
Role: URL para ejecutar JavaScript de ofertas en el worklet.
biddingWasmHelperUrl1, 2
Ejemplo: https://dsp.example/bid/custom-bikes/bid.wasm
Rol: URL del código de WebAssembly controlado desde biddingLogicUrl.
updateUrl2
Ejemplo: https://dsp.example/bid/custom-bikes/update
Role: URL que devuelve JSON para actualizar los atributos del grupo de interés. (Consulta Actualiza los datos del público y actualiza los anuncios).
trustedBiddingSignalsUrl2
Ejemplo: https://dsp.example/trusted/bidding-signals
Rol: URL base para las solicitudes de clave-valor al servicio de clave-valor de confianza del ofertante.
trustedBiddingSignalsKeys
Ejemplo: ['key1', 'key2' ...]
Role: Keys for requests to key-value trusted Key/Value service.
userBiddingSignals
Ejemplo: {...}
Role: Son metadatos adicionales que el propietario puede usar durante la oferta.
ads1
Ejemplo: [bikeAd1, bikeAd2, bikeAd3]
Rol: Anuncios que se podrían renderizar para este grupo de interés.
adComponents
Ejemplo: [customBike1, customBike2, bikePedal, bikeFrame1, bikeFrame2]
Rol: Componentes para anuncios compuestos por varias partes.

1 Las propiedades biddingLogicUrl y ads son opcionales, pero se requieren para participar en una subasta. Es posible que haya casos de uso para crear un grupo de interés sin estas propiedades. Por ejemplo, el propietario de un grupo de interés podría querer agregar un navegador a un grupo de interés para una campaña que aún no se está publicando o para algún otro uso futuro, o bien podría haberse quedado sin presupuesto publicitario de forma temporal.

2 En la implementación actual de la API de Protected Audience, biddingLogicUrl, biddingWasmHelperUrl, updateUrl y trustedBiddingSignalsUrl deben tener el mismo origen que el propietario. Es posible que esa no sea una restricción a largo plazo, y las URLs de ads y adComponents no tienen esa restricción.

Especifica anuncios para un grupo de interés

Los objetos ads y adComponents incluyen una URL para una creatividad del anuncio y, de forma opcional, metadatos arbitrarios que se pueden usar en el momento de la oferta.

Por ejemplo:

{
  renderUrl: 'https://cdn.example/.../bikeAd1.html',
  metadata: bikeAd1metadata // optional
}

leaveAdInterestGroup()

El propietario del grupo de interés puede solicitar que se quite un navegador de un grupo de interés. El navegador quita el grupo de interés de su lista de membresías.

navigator.leaveAdInterestGroup({
  owner: 'https://dsp.example',
  name: 'custom-bikes'
});

Si un usuario regresa al sitio que le pidió al navegador que agregara un grupo de interés, el propietario del grupo de interés puede llamar a la función navigator.leaveAdInterestGroup() para solicitarle al navegador que quite el grupo de interés.

El código de un anuncio también puede llamar a esta función para su grupo de interés.

Preguntas frecuentes

¿Cuál es la cantidad máxima de grupos de interés por propietario de grupo para un solo usuario?

Chrome permite hasta 1,000 grupos de interés por propietario y hasta 1,000 propietarios de grupos de interés. Estos límites están diseñados como medidas de protección y no deben alcanzarse durante el funcionamiento normal.

¿Cómo puedo maximizar los anuncios de grupos de interés que cumplen con los umbrales de k-anonimato?

Como se indica en la explicación pública, dado que un solo grupo de interés puede incluir varios anuncios posibles que podría mostrar, el grupo tendrá la oportunidad de volver a ofertar por otro de sus anuncios para que actúe como un "anuncio de resguardo" cada vez que su opción más preferida esté por debajo del umbral. Esto significa que un anuncio pequeño y especializado que aún se encuentre por debajo del umbral de k-anonimato puede participar en subastas, y su grupo de interés tiene una forma de recurrir a un anuncio más genérico hasta que el más especializado tenga un público lo suficientemente grande.

Desde una perspectiva táctica, puedes considerar lo siguiente:

  • Para que se comience a mostrar un anuncio nuevo, solo debes comenzar a ofertar por él en los casos en los que quieras que se muestre. No es necesario que realices ninguna acción adicional.
  • Puedes tener un anuncio de respaldo que uses cuando los anuncios nuevos no sean 𝑘-anónimos. Existe cierto riesgo de que tu anuncio de respaldo no sea 𝑘-anónimo, por lo que podrías considerar ofertar directamente con el anuncio de respaldo en algunos casos. Quizás lo hagas el 1% de las veces, por ejemplo, si ese es un buen nivel para garantizar que esperas que la alternativa se mantenga por encima del umbral.

Recientemente, se debatió sobre otras formas en que podrían funcionar las cosas, por lo que, si tienes algún caso de uso para el que este mecanismo podría suponer un problema, sigue participando en la conversación pública sobre las formas en que se podría mejorar la API.

Todas las referencias de la API de Protected Audience

Las guías de referencia de la API están disponibles:

La explicación de la API de Protected Audience también proporciona detalles sobre la compatibilidad y las restricciones de funciones.