Protected Audience API-Auktionsberichte

Auktionsdaten und Ergebnisse der Protected Audience API messen

In diesem Artikel finden Sie eine allgemeine Übersicht über die verschiedenen Mechanismen, mit denen Sie Protected Audience API-Auktionsdaten an Ihren Server senden können, sowie über die Umstellungsmechanismen, die Sie während der Migration nutzen können, bis alternative Lösungen verfügbar sind.

Die Protected Audience API wird verwendet, um Berichte zu wichtigen Messwerten aus einer Anzeigenauktion zu erstellen:

  • Private Aggregation: Damit werden Auktionssignale und -ergebnisse erfasst, um zusammenfassende Berichte zu erstellen.
  • Die Ads Reporting API für Fenced Frames und iFrames – ein Kanal innerhalb der Frames für die Kommunikation mit Protected Audience API-Worklets. Mit der API können Daten auf Ereignisebene mit Auktionssignalen verknüpft werden. Die Ads Reporting API ist ein Übergangsmechanismus für Berichte auf Ereignisebene, bis ein umfassenderes Verfahren zur Berichterstellung entwickelt wird.
  • Attributionsberichte, in denen Conversion-Daten Auktionssignalen zugeordnet werden können
  • Freigegebener Speicher: Auktionssignale in einen ursprungsübergreifenden Speicher schreiben und diese Daten dann später mithilfe der privaten Aggregation in Berichten darstellen

Protected Audience API-Berichte – Übersicht

Gesamtworkflow für Protected Audience
Gesamter Workflow für Protected Audience

Es gibt drei Hauptzeiträume, in denen Daten aus dem Protected Audience API-Auktionsablauf an Ihren Server gesendet werden können: Auktionszeit, wenn die Auktion auf der Publisher-Website durchgeführt wird, Renderingzeit, wenn die Anzeige in einem Fenced Frame oder iFrame auf der Publisher-Website gerendert wird, und Conversion-Zeitraum, in dem der Nutzer eine Aktion auf der anderen Website ausführt, die der Auktion zugeordnet werden kann.

Während der Auktion können Sie mithilfe von Berichterstellungs-Worklets Berichte zu den Auktionsdaten erstellen. Während des Renderings können Sie Interaktionsdaten aus einem iFrame oder einem Fenced Frame melden. Während der Conversion können Sie mithilfe der Attribution Reporting API Attributionsdaten von der Zielseite erfassen.

Standorte melden

Innerhalb einer Auktion können Käufer Signale melden, die in generateBid() und reportWin() Worklets verfügbar sind, während Verkäufer Signale melden können, die in scoreAd() und reportResult() verfügbar sind. Außerhalb einer Auktion können Käufer und Verkäufer Daten aus einem Frame erfassen, der die Anzeige gerendert hat, und von der Website, auf der die Conversion durchgeführt wurde.

Zeitraum Ziel Standort Daten verfügbar Reporting APIs verfügbar
Auktion Käufer generateBid() Signale, Auktionsergebnisse und Auktionsleistung Private Aggregation API
reportWin() Private Aggregation API
Ads Reporting API
Verkäufer scoreAd() Private Aggregation API
reportResult() Private Aggregation API
Ads Reporting API
Rendern Käufer / Verkäufer Frame auf der Publisher-Website Daten auf Ereignisebene im Anzeigen-Frame Private Aggregation API
Ads Reporting API
Conversion Käufer / Verkäufer Conversion-Website Daten auf Conversion- und Ereignisebene von der Conversion-Website Attribution Reporting API
Private Aggregation API
Ads Reporting API

In jedem der aufgeführten Zeiträume haben Käufer und Verkäufer Zugriff auf verschiedene Reporting APIs, mit denen Daten wie Auktionssignale, Daten auf Ereignisebene und Conversion-Daten erfasst werden können.

Verfügbare Daten in einer Protected Audience API-Auktion

Die folgenden Daten können während der Auktion über ein Protected Audience API-Worklet gemeldet werden.

Signale

Signale sind Kontextdaten der Auktion, Nutzerdaten, Echtzeitdaten und Browserdaten, die Käufern und Verkäufern in einem Worklet zur Verfügung stehen, um ein Gebot zu generieren, eine Anzeige zu bewerten und die Ergebnisse einer Auktion zu erfassen.

Signal Beschreibung Ort festlegen Nutzer Verfügbarkeit
auctionSignals Daten, die im Zusammenhang mit dem Ort der Auktion verfügbar sind. Diese Daten können Informationen zum Seiteninhalt, selbst erhobene Nutzerdaten und mehr umfassen. Wird vom Verkäufer auf der Publisher-Website in der Auktionskonfiguration festgelegt. Käufer
Verkäufer
GeneriertBid ScoreAd reportWin reportResult
directFromSellerSignals Dieselben Daten für auctionSignals, perBuyerSignals, sellerSignals, aber die Signale kommen garantiert vom angegebenen Verkäufer. Über HTTP-Antwortheader vom Verkäufer festgelegt Käufer
Verkäufer
GeneriertBid ScoreAd reportWin reportResult
browserSignals Verschiedene vom Browser bereitgestellte Daten (topWindowHostname, interestGroupOwner, renderUrl, adComponents, biddingDurationMsec, IGJoinCount, IGRecency, modelingSignals). Vom Browser festgelegt. Käufer
Verkäufer
GeneriertBid ScoreAd reportWin reportResult
sellerSignals Signale, die dem Verkäufer für die Anzeigenbewertung zur Verfügung gestellt werden. Wird vom Verkäufer auf der Publisher-Website in der Auktionskonfiguration festgelegt. Verkäufer ScoreAd
reportWin
reportResult
trustedScoringSignals Echtzeitsignale, die dem Verkäufer für die Anzeigenbewertung zur Verfügung gestellt werden. Die URL wird vom Verkäufer auf der Publisher-Website in der Auktionskonfiguration festgelegt. Verkäufer ScoreAd reportResult
perBuyerSignals Kontextdaten der Auktion, die bestimmten Käufern bereitgestellt werden Der Verkäufer kann die Werte für die Käufer vor Beginn der Auktion abrufen. Dies entspricht dem Wissen des Käufers über die Werbechancen. Wird vom Verkäufer auf der Publisher-Website in der Auktionskonfiguration festgelegt. Käufer GeneriertBid ScoreAd reportWin reportResult
trustedBiddingSignals Echtzeitsignale, die Käufern für Anzeigengebote zur Verfügung gestellt werden. Die URL wird vom Käufer auf der Website des Werbetreibenden festgelegt, wenn die Interessengruppe festgelegt ist. Käufer generateBid
userBiddingSignals Vom Käufer zur Verfügung gestellte Nutzerdaten. Wird vom Käufer auf der Website des Werbetreibenden festgelegt, wenn die Interessengruppe festgelegt ist . Käufer generateBid

Das Objekt auction config (Auktionskonfiguration) ist die primäre Datenquelle, die bereitgestellt wird, um als Signale in Worklets verfügbar zu werden. Publisher und Verkäufer können Kontextdaten und selbst erhobene Daten über die Auktionskonfiguration bereitstellen. Diese Signale lassen sich mit den Interessengruppendaten des Käufers, Daten auf Ereignisebene aus dem Anzeigen-Rendering-Frame und Attributionsdaten von der Klickseite anreichern. Die gemeldeten Daten können für Käufer- und Verkäuferberichte, Abrechnung, Budgetierung, ML-Modelltraining und mehr verwendet werden.

Weitere verfügbare Daten

  • Ergebnisdaten, die sich auf Auktionsgewinn- und -verlustdaten beziehen, z. B. den Preis des erfolgreichen Gebots und den Grund für die Ablehnung des Gebots
  • Leistungsdaten mit Latenzinformationen, etwa wie lange es gedauert hat, das Gebots-Worklet abzurufen und auszuführen.

Außerhalb einer Protected Audience API-Auktion verfügbare Daten

Außerhalb einer Protected Audience API-Auktion gibt es zwei Zeiträume, in denen Daten für die Berichterstellung verfügbar sind.

Während des Renderings, wenn die Anzeige auf der Publisher-Website gerendert wird, können die Daten auf Ereignisebene innerhalb des iFrames oder des abgegrenzten Frames mit Protected Audience API-Auktionsdaten verknüpft und an Ihren Server gemeldet werden. Beispieldaten auf Ereignisebene umfassen Anzeigenimpressionen, Klicks, Mauszeigerbewegungen und andere Ereignisse, die innerhalb des Frames auftreten.

Wenn ein Nutzer während des Conversion-Zeitraums eine Aktion auf der Klickseite durchführt, die der Auktion zugeordnet ist, können die Daten auf Ereignisebene von der Conversion-Seite mit Protected Audience API-Auktionsdaten verknüpft und an Ihren Server gemeldet werden.

Berichte auf Ereignisebene

Berichte auf Ereignisebene enthalten ausführliche Informationen zu einem oder mehreren Ereignissen. Ein Ereignis kann ein Auktionsgewinn, eine Anzeigenimpression oder eine Conversion sein. Bis mindestens 2026 bleiben Berichte zu Auktionsgewinnen auf Ereignisebene verfügbar. Außerdem sind Fence Frames zum Rendern einer Protected Audience-Anzeige nicht erforderlich und ein iFrame mit uneingeschränktem Netzwerkzugriff kann für Berichte auf Ereignisebene verwendet werden. Außerdem ist die Ads Reporting API in abgegrenzten Frames und iFrames verfügbar, damit Sie Auktions- und Conversion-Daten mit Daten auf Ereignisebene aus dem Frame verknüpfen können. Dies soll den Migrationsprozess für das System erleichtern, da Sie Ihre vorhandene Berichtsinfrastruktur bis mindestens 2026 weiter nutzen können, während Sie Ihr System zu Protected Audience migrieren.

Berichte zu Auktionsgewinnen auf Ereignisebene mit sendReportTo()

Ein Mechanismus, mit dem in einer Protected Audience-Auktion Daten auf Ereignisebene erfasst werden können, ist der sendReportTo() function, der einen Auktionsgewinn gewinnt. Die Funktion ist in den Worklets zur Berichterstellung für Käufer und Verkäufer verfügbar und der Browser sendet eine GET-Anfrage an den angegebenen URL-String, wenn das Anzeigen-Rendering beginnt. Sie können jedes in Ihren Worklets verfügbare Signal als Suchparameter der URL codieren.

Beispielsweise kann ein Käufer zu Abrechnungszwecken den erfolgreichen Gebotsbetrag aus dem Worklet „reportWin()“ melden:

// Buyer reporting worklet
function reportWin(auctionSignals, perBuyerSignals, sellerSignals, browserSignals, directFromSellerSignals) {
  sendReportTo(`https://buyer-reporting-server.example/reporting?bid=${browserSignals.bid}`);
}

Die sendReportTo()-Funktion kann verwendet werden, um einen Gewinnbericht für den Verkäufer zu erstellen, wenn er von reportResult() aufgerufen wird, und einen Gewinnbericht für den Käufer, wenn er von reportWin() aus aufruft. Die Funktion sendReportTo() ist bis mindestens 2026 verfügbar.

Bericht zu Interaktionen

Ein Bericht zur Interaktion enthält Daten auf Ereignisebene eines Anzeigen-Creatives, etwa zu Impressionen oder Klicks. Diese Daten sind den Signalen der Protected Audience API-Auktion zugeordnet, über die die Anzeige gerendert wurde. Da die Anzeige nach Abschluss der Auktion gerendert wird, sind die Auktionssignale innerhalb des Frames, in dem die Anzeige gerendert wird, nicht verfügbar. Damit die Daten aus verschiedenen Zeiträumen zugeordnet werden können, gibt es zwei Übergangsmechanismen zur Erstellung von Interaktionsberichten.

Die oben beschriebene Funktion sendReportTo() kann verwendet werden, um Auktionsdaten mit Daten auf Ereignisebene aus einem iFrame zu verknüpfen. Sie funktioniert jedoch nicht bei einem Fenced Frame, da keine eindeutige ID vom Einbettungsserver übergeben werden kann, da die Kommunikation zwischen dem Einbettunger und dem Fenced Frame eingeschränkt ist. Zum Verknüpfen von Auktionsdaten mit Daten auf Ereignisebene aus einer Fence Frame-Anzeige kann die Ads Reporting API verwendet werden.

Ads Reporting API für Fenced Frames und iFrames

Die Ads Reporting API für abgegrenzte Frames und iFrames bietet einen Mechanismus, mit dem Sie Daten auf Nutzerereignisebene aus einem Anzeigenframe mit Signalen innerhalb einer Protected Audience-Auktion verknüpfen können.

In einem Protected Audience API-Berichts-Worklet können Sie ein Anzeigen-Beacon mit der registerAdBeacon()-Funktion registrieren und Ihre Berichts-URL übergeben, wobei die Signale als Suchparameter hinzugefügt werden. Außerdem geben Sie das benutzerdefinierte Ereignis an, das Sie mit der Berichts-URL verknüpfen möchten. Dann können Sie später, wenn die Anzeige in einem Fenced Frame gerendert wird, das benutzerdefinierte Ereignis auslösen, indem Sie die Funktion window.fence.reportEvent() aufrufen. Daten, die im Fenced Frame verfügbar sind, können als Nutzlast hinzugefügt werden.

Die registerAdBeacon()-Funktion ist nur in den Berichtsfunktionen und nicht in der Gebotslogik des Käufers und der Bewertungslogik des Verkäufers verfügbar.

Im folgenden Beispiel wird eine Kampagnen-ID einer Nutzlast auf Ereignisebene mit den Klickkoordinaten zugeordnet:

// Protected Audience API buyer win reporting worklet
function reportWin(auctionSignals) {
  const { campaignId } = auctionSignals

  registerAdBeacon({
    click: `https://buyer-server.example/report/click?campaignId=${campaignId}`
  })
}
// Protected Audience API seller reporting worklet
function reportResult(auctionConfig) {
  const { campaignId } = auctionConfig.auctionSignals;

  registerAdBeacon({
    click: `https://seller-server.example/report/click?campaignId=${campaignId}`
  })
}
// Ad frame
window.fence.reportEvent({
  eventType: 'click',
  eventData: JSON.stringify({'clickX': '123', 'clickY': '456'}),
  destination:['buyer', 'seller']
});

Die Fenced Frames Ads Reporting API ist auch bis mindestens 2026 verfügbar. Dies hat die gleichen Gründe wie die Berichte zu Gewinnen.

Ausführlichere Informationen finden Sie in der Erläuterung.

Uneingeschränkter Netzwerkzugriff

Fenced Frames ermöglichen das Laden von Netzwerkressourcen auf die gleiche Weise wie ein iFrame. Außerdem können Sie Daten auf Ereignisebene innerhalb von Fenced Frames an Ihren Server senden. Sie können später serverseitig Berichte auf Ereignisebene erstellen. Verknüpfen Sie dazu die Daten auf Ereignisebene aus einem abgegrenzten Frame mit den Auktionsdaten, die mit sendReportTo() gesendet wurden. Weitere Informationen hierzu finden Sie oben im Abschnitt Verfahren für Berichte auf Auktionsereignisebene.

Der Netzwerkzugriff wird irgendwann nach der Einstellung von Drittanbieter-Cookies eingeschränkt.

Die derzeit in der Protected Audience API vorhandenen Meldemechanismen auf Ereignisebene sind Übergangsmechanismen. Eine alternative Lösung wird für bestehende Anwendungsfälle besser geeignet sein.

Attributionsbericht

Mit einem Attributionsbericht können Sie eine Conversion auf einer Website einer Anzeige zuordnen, die aus einer Protected Audience API-Auktion ausgewählt wurde. Angenommen, ein Nutzer klickt auf eine von Ihnen geschaltete Produktanzeige, wird auf die Website des Werbetreibenden weitergeleitet, kauft dort etwas und Sie möchten den Kauf der präsentierten Anzeige zuordnen. Die Attribution Reporting API wird in die Protected Audience API integriert, um die Auktionsdaten der Publisher-Website und die Conversion-Daten von der Website des Werbetreibenden zu kombinieren.

Wir entwickeln eine dauerhaftere Lösung. Sie können jedoch die Ads Reporting API für Fenced Frames verwenden. Dies ist der Übergangsmechanismus, um mit Attribution Reporting Berichte auf Ereignisebene und zusammengefasste Berichte zu erstellen. Diese Berichte dienen der Messung von Conversions und sind getrennt von den Berichten zur Interaktion auf Ereignisebene und aggregierten Interaktionen, die aus der Auktion und dem Anzeigen-Frame generiert werden. Wir werden eine erklärende Erklärung für eine dauerhafte Lösung veröffentlichen, sobald diese bereit ist.

Übergangsmechanismus

Bei der Registrierung eines Anzeigen-Beacon können Sie das Keyword reserved.top_navigation verwenden. Dadurch wird automatisch der Attribution-Reporting-Eligible-Header für das Beacon hinzugefügt, damit es als Attributionsquelle registriert werden kann.

registerAdBeacon({
 'reserved.top_navigation': 'https://adtech.example/click?buyer_event_id=123',
});

Wenn Sie Daten auf Ereignisebene an das registrierte Beacon anhängen möchten, können Sie setReportEventDataForAutomaticBeacons() aus dem abgegrenzten Frame mit der Ereignisnutzlast aufrufen.

window.fence.setReportEventDataForAutomaticBeacons({
  eventType: 'reserved.top_navigation',
  eventData: 'data from the frame',
  destination:['seller', 'buyer']
})

Weitere Informationen finden Sie in der Erklärung zur Ads Reporting API im Abschnitt „Attribution Reporting“.

Beispiel für Berichte zu Engagement und Conversions

In diesem Beispiel sehen wir uns den Käufer aus der Perspektive des Käufers an, der die Daten aus der Auktion, dem Anzeigen-Frame und der Conversion-Website miteinander verknüpfen möchte.

Bei diesem Workflow stimmt der Käufer mit dem Verkäufer ab, um der Auktion eine eindeutige ID zu senden. Während der Auktion sendet der Käufer diese eindeutige ID zusammen mit den Auktionsdaten. Während des Renderings und der Konvertierung werden auch die Daten aus dem Fenced Frame oder iFrame mit derselben eindeutigen ID gesendet. Später können diese Berichte anhand der eindeutigen ID miteinander verknüpft werden.

Workflow:

  1. Vor Beginn der Auktion sendet der Käufer im Rahmen seiner programmatischen Gebotsantwort für Echtzeitgebote (Real-Time-Bidding, RTB) eine eindeutige ID an den Verkäufer. Die ID kann als Variable festgelegt werden, z. B. auctionId. Die ID wird als perBuyerSignals in auctionConfig übergeben und steht in den Worklets des Käufers zur Verfügung.
  2. Während der Auktion kann der Käufer ein Anzeigen-Beacon registrieren, das beim Rendern der Anzeige und während der Conversion (registerAdBeacon()) ausgelöst wird.
    1. Wenn Sie Auktionssignale für ein Anzeigen-Frame-Ereignis zuordnen möchten, legen Sie auctionId als Abfrageparameter der Beacon-URL fest.
    2. Wenn Sie Auktionssignale für ein Conversion-Ereignis zuordnen möchten, legen Sie in der Beacon-URL auctionId fest.
  3. Die Beacons, die Sie während der Auktion registriert haben, können während des Renderings der Anzeige ausgelöst oder mit Daten auf Ereignisebene optimiert werden.
    1. Lösen Sie das Frame-Ereignis mit reportEvent() aus und übergeben Sie die Daten auf Ereignisebene.
    2. Dem Attribution-Beacon mit setReportEventDataForAutomaticBeacons() Nutzlast auf Ereignisebene hinzufügen
    3. Registrieren Sie die Anzeige mit der Attribution Reporting API, indem Sie auf Beacon-Anfragen für Anzeigen mit dem Header Attribution-Reporting-Register-Source antworten.
  4. Während der Conversion-Zeit können Sie die Quelle auslösen, die Sie während der Auktion registriert haben.

Nach dem oben beschriebenen Vorgang erhält der Käufer einen Auktionsbericht, einen Interaktionsbericht und einen Conversion-Bericht. Diese sind alle durch einen einzigen eindeutigen Schlüssel miteinander verknüpft und können miteinander verknüpft werden.

Ein ähnlicher Workflow gilt für Verkäufer, die Zugriff auf Attributionsdaten benötigen. Außerdem kann der Verkäufer eine eindeutige ID zum Senden mit registerAdBeacon() verwenden. Aus dem Frame enthält der reportEvent()-Aufruf eine Ziel-Property, über die der Bericht sowohl an den Käufer als auch an den Verkäufer gesendet werden kann. Die SSP muss auch auf der Landingpage vorhanden sein, damit der Trigger der Quelle zugeordnet werden kann.

Protected Audience-Daten aggregieren

Die Private Aggregation API ist der Mechanismus, mit dem über Protected Audience-Daten ein zusammenfassender Bericht erstellt wird. Dabei handelt es sich um einen verrauschten, aggregierten Bericht mit Daten, die in Buckets erfasst wurden. Ein Bucket wird durch einen Aggregationsschlüssel dargestellt. Einige Informationen können in den Schlüssel codiert werden.

Beispielsweise kann ein Anzeigenimpressionsereignis in verschiedenen Gruppen gezählt werden, wobei jede Gruppe für eine andere Werbekampagne steht. Ein zusammenfassender Bericht unterscheidet sich von einem Bericht auf Ereignisebene dadurch, dass er keine Informationen zu jedem einzelnen Ereignis enthält. Mit einem Bericht auf Ereignisebene können Sie feststellen, dass die Nutzer A, B und C die Kampagne 123 gesehen haben. Mit Zusammenfassungsberichten können Sie die Anzahl der Nutzer messen, die Kampagne 123 gesehen haben und Rauschen hinzugefügt wurde, um die Privatsphäre der Nutzer zu schützen.

Weitere Informationen zur API finden Sie im Artikel Private Aggregation.

Auktionssignale aggregieren

Mit der privaten Aggregation können Sie die in Worklets verfügbaren Signale für Ihren Server aggregieren. Für die Signalaggregation können Sie die Methode privateAggregation.contributeToHistogram() verwenden, die im Worklet für Gebote von Käufern, im Worklet für die Verkäuferbewertung und in den Worklets für Käufer-/Verkäuferberichte verfügbar ist.

In diesem Beispiel wird das erfolgreiche Gebot in der Gruppe für Interessengruppeninhaber zusammengefasst:

function convertBuyerToBucket(igOwner) {}
function convertWinningBidToValue(winningBid) {}

function reportResult(auctionConfig, browserSignals) {
  privateAggregation.contributeToHistogram({
    bucket: convertBuyerToBucket(browserSignals.interestGroupOwner),
    value: convertWinningBidToValue(browserSignals.bid)
  });
} 

Das ist der allgemeine Mechanismus, wenn die Signale, die Sie aggregieren möchten, nicht mit Daten auf Ereignisebene verknüpft sind und nicht durch ein Ereignis außerhalb der Auktion ausgelöst werden. Weitere Informationen zu Auktionssignalen

Auktionssignale mit Ereignisdaten aggregieren

Sie können Auktionssignale mit eingeschränkten Informationen zu einem Ereignis in einem Anzeigenframe aggregieren. Sie können beispielsweise ermitteln, wie viele Klicks eine Anzeige für eine Kampagne erhalten hat, indem Sie eine Gruppe erstellen, die die Kampagne und das Klickereignis darstellt. Beachten Sie, dass Sie aus dem Anzeigen-Frame heraus angeben können, welches Ereignis aufgetreten ist, aber Sie können keine Nutzlast auf Ereignisebene anhängen.

Wenn Sie Auktionssignale nach Ereignissen aggregieren möchten, können Sie privateAggregation.contributeToHistogramOnEvent(eventType, contribution) verwenden. Dabei wird ein String verwendet, der den Ereignistyp und den Beitrag angibt, der gemeldet werden soll, wenn das Ereignis ausgelöst wird. Sie können die Methode mit einem benutzerdefinierten Ereignistyp aufrufen und dann window.fence.reportEvent(eventType) aus dem Anzeigenframe aufrufen, um das Senden des Berichts auszulösen.

Angenommen, Sie möchten ermitteln, wie viele Klicks eine Anzeige für eine Kampagne erhalten hat.

// Protected Audience API worklet
function getClickReportBucketForCampaign(campaignId) {
  // return a bucket for the campaign ID and the click event
}

function generateBid(interestGroup) {
  privateAggregation.contributeToHistogramOnEvent('click', {
    bucket: getClickReportBucketForCampaign(interestGroup.ads.metadata.campaignId), 
    value: 1
  });
}

In der Funktion zur Gebotsgenerierung können Sie eine Gruppe als Kombination aus Kampagnen-ID und Klickereignis definieren und dann den Wert für diese Gruppe jedes Mal um 1 erhöhen, wenn das Ereignis ausgelöst wird.

// Ad frame
window.fence.reportEvent('click');

Dann können Sie später über den Anzeigen-Frame das Senden des Berichts auslösen, indem Sie reportEvent(eventType) aufrufen:

Weitere Informationen zum Auslösen von Beiträgen zur privaten Aggregation aus einem Frame finden Sie in der Erläuterung.

Berichte zu Auktionsergebnissen und Leistung

Außerdem haben Sie die Möglichkeit, Auktionsergebnisse zusammenzufassen, wenn sie durch ein Gewinn- oder Verlustereignis einer Auktion mit contributeToHistogramOnEvent(eventType, contribution) ausgelöst werden, wenn Sie Keywords eines reservierten Ereignistyps übergeben (reserved.win, reserved.loss und reserved.always).

Die private Aggregation enthält eine Liste von Basiswerten, aus denen Sie den Bucket und den Wert Ihres Beitrags berechnen können. Die verfügbaren Basiswerte für Auktionsergebnisse sind der Gebotswert der erfolgreichen Anzeige, das zweithöchste Gebot und der Grund, aus dem ein Gebot von der Auktion abgelehnt wurde.

Wenn ein Basiswert angegeben wird, z. B. der Betrag des erfolgreichen Gebots, können Sie festlegen, wie viel dieser Wert addiert oder abgezogen wird, und dann den endgültigen Wert erfassen. Wird beispielsweise das erfolgreiche Gebot von 5 € als Basiswert angegeben, können Sie Ihr Gebot von 2 € subtrahieren, um den tatsächlichen Wert von 3 € zu berechnen, den Sie bei der Auktion verloren haben.

Berichte zu Auktionsergebnissen

Sehen wir uns ein Beispiel an, bei dem Sie eine Auktion verloren haben und wie weit Ihr Gebot vom Auktions-Auktionspreis abweicht.

Um zu erfahren, um wie viel Sie die Auktion verloren haben, können Sie Ihren Gebotspreis vom Preis des erfolgreichen Gebots abziehen:

function generateBid() {
  const bid = calculateBidAmount();

  privateAggregation.contributeToHistogramOnEvent('reserved.loss', {
    bucket: getBucketForCampaign(interestGroup.ads.metadata.campaignId),
    value: {
      baseValue: 'winning-bid',
      scale: 1 // Scale the value to minimize noise-to-signal ratio 
      offset: -bid, // Numbers added to browser value after scaling 
    }
  });
}

Wenn der Bericht gesendet wird, ist der tatsächlich gemeldete Wert der skalierte baseValue-Wert, verschoben um den offset-Wert. Weitere Informationen findest du in der Erläuterung.

Leistungsberichte

Käufer und Verkäufer können angeben, wie lange die Ausführung eines Skripts gedauert hat und wie lange es gedauert hat, die vertrauenswürdigen Signale abzurufen. Verkäufer können mit ihrer Zustimmung den Zeitpunkt der Gebotserstellung und des vertrauenswürdigen Gebotssignals jedes Käufers erfassen.

Weitere Informationen

Auktionssignale im freigegebenen Speicher speichern

Freigegebener Speicher ist ein nicht partitionierter und ursprungsübergreifender Speicher, in den Sie frei schreiben können, aber beim Lesen und Verarbeiten der gespeicherten Werte durch Gatter geschützt ist. Eines der verfügbaren Gatter für die Shared Storage API ist die private Aggregation. Sie können die Werte im freigegebenen Speicher nur aus einem Worklet heraus lesen und mithilfe der privaten Aggregation aus dem Worklet melden.

Sie können auch über Worklets für Gebote, Bewertungen und Berichte der Protected Audience API Daten in den freigegebenen Speicher schreiben. Sie können diese Werte im freigegebenen Speicher später über die private Aggregation an Ihren Server melden . Sie können die gespeicherten Werte auch für den Vorgang zur URL-Auswahl verwenden.

Über ein Protected Audience API-Worklet können Sie beliebige Schlüssel und Werte in den freigegebenen Speicher schreiben:

// Protected Audience API worklet
function generateBid() {
  sharedStorage.set('test-bucket', 123);
}

Später können Sie ein Worklet mit freigegebenem Speicher laden, um diesen Wert mit der privaten Aggregation zu lesen und zu senden:

// Shared Storage worklet
class SendReachReport{
  async run() {
    const testBucket = await this.sharedStorage.get('test-bucket');

    privateAggregation.contributeToHistogram({
      bucket: testBucket,
      value: 1
    });
  }
}

register('send-report', SendReachReport);

Weitere Informationen zu freigegebenem Speicher finden Sie im Abschnitt zum gemeinsamen Speicher im Entwicklerleitfaden für Protected Audience API-Berichte, in der Erklärung, in der Live-Demo und im Democode auf GitHub.

Nächste Schritte

Wir möchten mit Ihnen ins Gespräch kommen, um eine API zu entwickeln, die für alle funktioniert.

Über die API diskutieren

Wie andere Privacy Sandbox APIs wird auch diese API dokumentiert und öffentlich diskutiert.

Mit der API experimentieren

Sie können Tests zur Protected Audience API durchführen und sich an Diskussionen beteiligen.