Protected Audience API-Auktionsberichte

Daten und Ergebnisse von Protected Audience API-Auktionen analysieren

In diesem Artikel finden Sie einen allgemeinen Überblick über die verschiedenen Mechanismen, mit denen Sie Auktionsdaten der Protected Audience API an Ihren Server senden können. Außerdem werden die Übergangsmechanismen beschrieben, die Sie während der Migration verwenden können, bis alternative Lösungen verfügbar sind.

Um Berichte zu wichtigen Messwerten zu erstellen, die Sie aus einer Anzeigenauktion erhalten, funktioniert die Protected Audience API mit:

  • Private Aggregation: Hier werden Auktionssignale und -ergebnisse erfasst, um Zusammenfassungsberichte zu erstellen.
  • Ads Reporting API für Fenced Frames und iFrames, die einen Kanal innerhalb der Frames darstellen, über den mit Protected Audience API-Worklets kommuniziert werden kann. Mit der API können Daten auf Ereignisebene mit Auktionssignalen verknüpft werden. Die Berichterstellung auf Ereignisebene der Ads Reporting API ist ein Übergangsmechanismus, bis ein datenschutzfreundlicherer Berichtsmechanismus entwickelt wird.
  • Attribution Reporting, mit dem Sie Conversion-Daten mit Auktionssignalen verknüpfen können.
  • Shared Storage: Damit können Sie Auktionssignale in einen ursprungsübergreifenden Speicher schreiben und diese Daten später mit Private Aggregation analysieren.

Übersicht über Berichte zur Protected Audience API

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

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

Während der Auktionszeit können Sie die Auktionsdaten mit Reporting-Worklets melden. Während der Rendering-Zeit können Sie Daten zur Interaktion aus einem Iframe oder einem Fenced Frame melden. Während der Conversion können Sie Attributionsdaten von der Zielseite mit der Attribution Reporting API melden.

Standorte für Berichte

In einer Auktion können die Käufer Signale melden, die in den generateBid()- und reportWin()-Worklets verfügbar sind, und die Verkäufer Signale, die in scoreAd() und reportResult() verfügbar sind. Außerhalb einer Auktion können Käufer und Verkäufer Daten aus einem Frame, in dem die Anzeige gerendert wurde, und von der Website, auf der die Conversion erfolgt ist, melden.

Zeitraum Ziel Standort Verfügbare Daten Verfügbare Reporting APIs
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 Website des Publishers Daten auf Ereignisebene im Anzeigenframe Private Aggregation API
Ads Reporting API
Conversion Käufer / Verkäufer Conversion-Website Conversion- und Ereignisdaten von der Conversion-Website Attribution Reporting API
Private Aggregation API
Ads Reporting API

Während der einzelnen aufgeführten Zeiträume haben Käufer und Verkäufer Zugriff auf verschiedene Reporting-APIs, mit denen sie Daten wie Auktionssignale, Daten auf Ereignisebene und Conversion-Daten abrufen können.

In einer Protected Audience API-Auktion verfügbare Daten

Die folgenden Daten können während der Auktion in einem Protected Audience API-Worklet gemeldet werden.

Signale

Signale sind die kontextbezogenen Auktionsdaten, 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 melden.

Signal Beschreibung Standort festlegen Nutzer Verfügbarkeit
auctionSignals Daten, die im Kontext der Auktion verfügbar sind. Dazu können Seiteninhalte, selbst erhobene Nutzerdaten und mehr gehören. Vom Verkäufer auf der Publisher-Website in der Auktionskonfiguration festgelegt. Käufer
Verkäufer
generateBid scoreAd reportWin reportResult
directFromSellerSignals Die gleichen Daten wie für auctionSignals, perBuyerSignals und sellerSignals, aber die Signale stammen garantiert vom angegebenen Verkäufer. Über HTTP-Antwortheader vom Verkäufer festgelegt Käufer
Verkäufer
generateBid scoreAd reportWin reportResult
browserSignals Verschiedene vom Browser bereitgestellte Daten (topWindowHostname, interestGroupOwner, renderUrl, adComponents, biddingDurationMsec, IGJoinCount, IGRecency, modelingSignals). Wird vom Browser festgelegt. Käufer
Verkäufer
generateBid scoreAd reportWin reportResult
sellerSignals Signale, die dem Verkäufer für die Anzeigenbewertung zur Verfügung gestellt werden. 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 Kontextbezogene Auktionsdaten, die bestimmten Käufern zur Verfügung gestellt werden. Der Verkäufer kann die Werte für die Käufer abrufen, bevor die Auktion beginnt. Das ist das Wissen des Käufers über die Umsatzchance. Vom Verkäufer auf der Publisher-Website in der Auktionskonfiguration festgelegt. Käufer generateBid scoreAd reportWin reportResult
trustedBiddingSignals Echtzeitsignale, die den 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 eingerichtet wird. Käufer generateBid
userBiddingSignals Vom Käufer bereitgestellte Nutzerdaten. Wird vom Käufer auf der Website des Werbetreibenden festgelegt, wenn die Interessengruppe festgelegt wird . Käufer generateBid

Das Objekt auction config ist die primäre Datenquelle, die bereitgestellt wird, um als Signale in Worklets verfügbar zu sein. Der Publisher und der Verkäufer können in der Auktionskonfiguration kontextbezogene Daten und selbst erhobene Daten angeben. Diese Signale können mit den Daten der Interessengruppe des Käufers, Daten auf Ereignisebene aus dem Frame für das Anzeigenrendering und Attributionsdaten von der Seite für Klickdurchläufe angereichert werden. Die gemeldeten Daten können für Berichte für Käufer/Verkäufer, Abrechnung, Budgetierung, ML-Modelltraining und mehr verwendet werden.

Weitere verfügbare Daten

  • Ergebnisdaten, die sich auf Daten zu Auktionsgewinnen und ‑verlusten beziehen, z. B. Preis des erfolgreichen Gebots und Grund für die Ablehnung des Gebots.
  • Leistungsdaten mit Latenzinformationen, z. B. wie lange es gedauert hat, das Bidding-Worklet abzurufen und auszuführen.

Daten, die außerhalb einer Protected Audience API-Auktion verfügbar sind

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

Während der Rendering-Zeit, wenn die Anzeige auf der Publisher-Website gerendert wird, können die Daten auf Ereignisebene aus dem iFrame oder Fenced Frame den Auktionsdaten der Protected Audience API zugeordnet und an Ihren Server gesendet werden. Beispieldaten auf Ereignisebene sind unter anderem Anzeigenimpressionen, Klicks, Mauszeigerbewegungen und alle anderen Ereignisse, die im Frame auftreten.

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

Berichte auf Ereignisebene

Berichte auf Ereignisebene enthalten detaillierte Informationen zu einem oder mehreren Ereignissen. Ein Ereignis kann ein Auktionsgewinn, eine Anzeigenimpression oder eine Conversion sein. Bis mindestens 2026 bleibt die Berichterstellung auf Ereignisebene für Auktionsgewinne bestehen. Für das Rendern einer Protected Audience-Anzeige sind keine eingeschränkten Frames erforderlich und für die Berichterstellung auf Ereignisebene kann ein Iframe mit uneingeschränktem Netzwerkzugriff verwendet werden. Außerdem ist die Ads Reporting API in Fenced Frames und iFrames verfügbar, damit Sie Auktions- und Conversion-Daten mit Daten auf Ereignisebene aus dem Frame verknüpfen können. So wird die Migration für das Ökosystem erleichtert, da Sie Ihre vorhandene Berichtsinfrastruktur bis mindestens 2026 weiter verwenden können, während Sie Ihr System zu Protected Audience migrieren.

Berichte zu gewonnenen Auktionen auf Ereignisebene mit sendReportTo()

Ein Mechanismus zum Melden von Daten auf Ereignisebene in einer Protected Audience-Auktion ist sendReportTo() function bei einem Auktionsgewinn. Die Funktion ist in den Worklets für Käufer- und Verkäuferberichte verfügbar. Der Browser sendet eine GET-Anfrage an den angegebenen URL-String, wenn die Anzeige gerendert wird. Sie können jedes in Ihren Worklets verfügbare Signal als Abfrageparameter der URL codieren.

Ein Käufer kann beispielsweise den Betrag des Gewinnergebots aus dem reportWin()-Worklet für Abrechnungszwecke melden:

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

Mit der Funktion sendReportTo() kann ein Gewinnbericht für den Verkäufer generiert werden, wenn sie von reportResult() aufgerufen wird, und ein Gewinnbericht für den Käufer, wenn sie von reportWin() aufgerufen wird. Die Funktion sendReportTo() ist mindestens bis 2026 verfügbar.

Bericht zu Interaktionen

Ein Bericht zu Interaktionen enthält Daten auf Ereignisebene aus einem Anzeigen-Creative, z. B. Daten zu Impressionen oder Klicks, die mit den Signalen der Protected Audience API-Auktion verknüpft sind, in der die Anzeige gerendert wurde. Da die Anzeige nach Abschluss der Auktion gerendert wird, sind die Auktionssignale nicht im Frame verfügbar, in dem die Anzeige gerendert wird. Damit Sie diese Daten aus verschiedenen Zeiträumen verknüpfen können, stellen wir Ihnen zwei Übergangsmechanismen zum Erstellen von Berichten zum Engagement zur Verfügung.

Die oben beschriebene Funktion sendReportTo() kann verwendet werden, um Auktionsdaten mit Daten auf Ereignisebene aus einem iFrame zu verknüpfen. Bei einem Fenced Frame funktioniert sie jedoch nicht, da keine eindeutige ID vom Einbettungscode übergeben werden kann, weil die Kommunikation zwischen dem Einbettungscode und dem Fenced Frame eingeschränkt ist. Um Auktionsdaten mit Daten auf Ereignisebene aus einer Anzeige in einem Fenced Frame zu verknüpfen, kann die Ads Reporting API verwendet werden.

Ads Reporting API für Fenced Frames und iFrames

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

In einem Protected Audience API-Reporting-Worklet können Sie ein Anzeigen-Beacon mit der Funktion registerAdBeacon() registrieren und Ihre Reporting-URL mit den als Abfrageparametern hinzugefügten Signalen übergeben. Außerdem geben Sie das benutzerdefinierte Ereignis an, das Sie mit der Berichts-URL verknüpfen möchten. Wenn die Anzeige später in einem Fenced Frame gerendert wird, können Sie das benutzerdefinierte Ereignis durch Aufrufen der Funktion window.fence.reportEvent() auslösen. Daten, die im eingezäunten Frame verfügbar sind, können als Nutzlast hinzugefügt werden.

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

Im folgenden Beispiel wird einer Nutzlast auf Ereignisebene mit den Klickkoordinaten eine Kampagnen-ID 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 aus denselben Gründen wie die Win Reporting API mindestens bis 2026 verfügbar.

Weitere Informationen

Uneingeschränkter Netzwerkzugriff

Mit Fenced Frames können Netzwerkressourcen auf dieselbe Weise wie mit einem iFrame geladen werden. Außerdem können Sie Daten auf Ereignisebene in Fenced Frames an Ihren Server senden. Sie können später Berichte auf Ereignisebene auf dem Server generieren, indem Sie die Daten auf Ereignisebene aus einem Fenced Frame den Auktionsdaten zuordnen, die mit sendReportTo() gesendet wurden. Das wurde oben im Abschnitt Mechanismus für Berichte auf Ereignisebene für Auktionen beschrieben.

Der Netzwerkzugriff wird in Zukunft eingeschränkt.

Attributionsbericht

Mit einem Attributionsbericht können Sie eine Conversion auf einer Website einer Anzeige zuordnen, die in einer Protected Audience API-Auktion ausgewählt wurde. Ein Nutzer klickt beispielsweise auf eine Ihrer Produktanzeigen, wird zur Website des Werbetreibenden weitergeleitet und kauft dort etwas. Sie möchten den Kauf der angezeigten Anzeige zuordnen. Die Attribution Reporting API wird in die Protected Audience API eingebunden, um die Auktionsdaten von der Publisher-Website und die Conversion-Daten von der Advertiser-Website zu kombinieren.

Während wir an einer dauerhaften Lösung arbeiten, können Sie die Ads Reporting API für Fenced Frames als Übergangsmechanismus verwenden, um mit Attribution Reporting einen Bericht auf Ereignisebene und einen aggregierten Bericht zu erstellen. Diese Berichte dienen zur Messung von Conversions und sind unabhängig von den Engagement-Berichten auf Ereignisebene und den aggregierbaren Engagement-Berichten, die aus der Auktion und dem Anzeigenframe generiert werden. Sobald eine dauerhafte Lösung verfügbar ist, werden wir eine entsprechende Erklärung veröffentlichen.

Übergangsmechanismus

Wenn Sie ein Anzeigen-Beacon registrieren, 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() mit der Ereignisnutzlast aus dem eingegrenzten Frame aufrufen.

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

Weitere Informationen finden Sie im Abschnitt „Attribution Reporting“ des Ads Reporting API-Explainer.

Beispiel für Berichte zu Engagement und Conversions

In diesem Beispiel betrachten wir die Situation aus der Perspektive des Käufers, der die Daten aus der Auktion, dem Anzeigenframe und der Conversion-Website verknüpfen möchte.

In diesem Workflow stimmt sich der Käufer mit dem Verkäufer ab, um eine eindeutige ID in die Auktion zu senden. Während der Auktion sendet der Käufer diese eindeutige ID zusammen mit den Auktionsdaten. Während des Renderns und der Conversion werden die Daten aus dem Fenced Frame oder Iframe ebenfalls mit derselben eindeutigen ID gesendet. Später kann die eindeutige ID verwendet werden, um diese Berichte zuzuordnen.

Workflow:

  1. Bevor die Auktion beginnt, sendet der Käufer eine eindeutige ID an den Verkäufer. Diese ist Teil seiner programmatischen Gebotsantwort für Echtzeitgebote (Real-Time-Bidding, „RTB“). Die ID kann als Variable wie auctionId festgelegt werden. Die ID wird als perBuyerSignals im auctionConfig übergeben und ist in den Worklets des Käufers verfügbar.
  2. Während der Auktion kann der Käufer ein Anzeigen-Beacon registrieren, das während der Anzeigenwiedergabe und der Conversion-Zeit (registerAdBeacon()) ausgelöst wird.
    1. Wenn Sie Auktionssignale für ein Anzeigenframe-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 die auctionId in der Beacon-URL fest.
  3. Während der Anzeigenbereitstellung können die Beacons, die Sie während der Auktion registriert haben, 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 Attributions-Beacon mit setReportEventDataForAutomaticBeacons() eine Nutzlast auf Ereignisebene hinzufügen
    3. Registrieren Sie die Anzeige mit der Attribution Reporting API, indem Sie auf die Anfragen für das Anzeigen-Beacon 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 Auktionszeit registriert haben.

Nach dem oben beschriebenen Prozess hat der Käufer einen Auktionsbericht, einen Engagement-Bericht und einen Conversion-Bericht, die alle über einen eindeutigen Schlüssel miteinander verknüpft sind.

Ein ähnlicher Workflow gilt für einen Händler, wenn er Zugriff auf Attributionsdaten benötigt. Der Händler kann auch eine eindeutige ID verwenden, die mit registerAdBeacon() gesendet wird. Im Frame enthält der reportEvent()-Aufruf ein Zielattribut, mit dem 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 Protected Audience-Daten gemeldet werden, um einen Zusammenfassungsbericht zu erstellen. Das ist ein aggregierter Bericht mit Rauschen, der Daten aus Buckets enthält. Ein Bucket wird durch einen Aggregationsschlüssel dargestellt. Einige Informationen können in den Schlüssel codiert werden.

Ein Ereignis für eine Anzeigenimpression kann beispielsweise in verschiedenen Buckets gezählt werden, wobei jeder Bucket eine andere Werbekampagne darstellt. Ein Zusammenfassungsbericht unterscheidet sich von einem Bericht auf Ereignisebene dadurch, dass er keine Informationen zu einzelnen Ereignissen 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. Zum Schutz der Privatsphäre der Nutzer wird Rauschen hinzugefügt.

Weitere Informationen zur API finden Sie im Artikel Private Aggregation.

Auktionssignale zusammenfassen

Mit der privaten Aggregation können Sie die in Worklets verfügbaren Signale auf Ihrem Server aggregieren. Für die Signalaggregation können Sie die privateAggregation.contributeToHistogram()-Methode verwenden, die im Gebots-Worklet des Käufers, im Scoring-Worklet des Verkäufers und in den Berichts-Worklets des Käufers/Verkäufers verfügbar ist.

In diesem Beispiel wird das Gewinnergebot im Bucket des Inhabers der Interessengruppe zusammengefasst:

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

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

Dieser Mechanismus wird im Allgemeinen verwendet, 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 zum Melden von Auktionssignalen

Auktionssignale mit Ereignisdaten aggregieren

Sie können Auktionssignale mit eingeschränkten Informationen zu einem Ereignis zusammenfassen, das in einem Anzeigenframe auftritt. Sie können beispielsweise aggregiert messen, wie viele Klicks eine Anzeige für eine Kampagne erhalten hat, indem Sie einen Bucket erstellen, der diese Kampagne und das Click-Ereignis repräsentiert. Im Anzeigenframe können Sie angeben, welches Ereignis aufgetreten ist, aber keine Nutzlast auf Ereignisebene anhängen.

Wenn Sie Auktionssignale nach Ereignissen zusammenfassen möchten, können Sie privateAggregation.contributeToHistogramOnEvent(eventType, contribution) verwenden. Dazu ist ein String erforderlich, 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 messen, wie viele Klicks eine Anzeige für eine Kampagne erzielt 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 Gebotsgenerierungsfunktion können Sie einen Bucket als Kombination aus der Kampagnen-ID und dem Klickereignis definieren und den Wert für diesen Bucket jedes Mal um 1 erhöhen, wenn das Ereignis ausgelöst wird.

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

Später können Sie dann über den Anzeigenframe die Einreichung des Berichts auslösen, indem Sie reportEvent(eventType) aufrufen:

Weitere Informationen zum Auslösen von Beiträgen zur privaten Aggregation über einen Frame

Berichte zu Auktionsergebnissen und Leistung

Sie können auch Auktionsergebnisse zusammenfassen, wenn sie durch ein Auktionsgewinn- oder ‑verlustereignis mit contributeToHistogramOnEvent(eventType, contribution) ausgelöst werden, wenn Sie reservierte Event-Typ-Keywords (reserved.win, reserved.loss und reserved.always) übergeben.

Die private Aggregation bietet 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 Gewinneranzeige, der Gebotswert, der als zweithöchster Wert eingestuft wurde, und der Grund, aus dem ein Gebot in der Auktion abgelehnt wurde.

Wenn ein Basiswert angegeben wird, z. B. der Betrag des erfolgreichen Gebots, können Sie festlegen, wie viel von diesem Wert addiert oder subtrahiert werden soll, und dann den Endwert melden. Wenn beispielsweise das Höchstgebot von 5 $als Basiswert angegeben wird, können Sie Ihr Gebot von 2 $abziehen, um den tatsächlichen Wert von 3 $zu berechnen, um wie viel Sie die Auktion verloren haben.

Berichte zu Auktionsergebnissen

Sehen wir uns ein Beispiel an, in dem Sie eine Auktion verloren haben und wissen möchten, wie weit Ihr Gebot vom Abrechnungspreis der Auktion entfernt war.

Um herauszufinden, um wie viel Sie die Auktion verloren haben, können Sie Ihren Gebotspreis vom Gebotspreis des Gewinners 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 eingereicht wird, ist der tatsächlich gemeldete Wert der skalierte baseValue, der um den Wert offset verschoben wird. Weitere Informationen finden Sie in der Erklärung.

Leistungsberichte

Käufer und Verkäufer können melden, wie lange die Ausführung eines Skripts und das Abrufen der vertrauenswürdigen Signale gedauert hat. Verkäufer können mit Einwilligung der Käufer die Zeit für die Gebotsgenerierung und die Zeit für das vertrauenswürdige Gebotssignal jedes Käufers erfassen.

Weitere Informationen

Auktionssignale in Shared Storage speichern

Geteilter Speicherplatz ist ein nicht partitionierter und ursprungsübergreifender Speicher, in den Sie frei schreiben können. Beim Lesen und Verarbeiten der gespeicherten Werte werden jedoch Gates verwendet. Eines der verfügbaren Gates für die Shared Storage API ist Private Aggregation. Sie können die Werte im freigegebenen Speicher nur aus einem Worklet heraus lesen und diese Werte mit privater Aggregation aus dem Worklet heraus melden.

Sie können auch aus Protected Audience API-Worklets für Gebote, Scoring und Berichte in den gemeinsamen Speicher schreiben. Zu einem späteren Zeitpunkt können Sie diese Werte dann mithilfe der privaten Aggregation an Ihren Server melden . Sie können die gespeicherten Werte auch für den Vorgang URL-Auswahl verwenden.

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

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

Später können Sie ein Shared Storage-Worklet laden, um diesen Wert zu lesen und mit Private Aggregation 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 Shared Storage finden Sie im Entwicklerleitfaden zur Protected Audience API, im Explainer, 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.