URL-Übersicht auswählen

Mit „Select URL“ können Sie auswählen, welche Inhalte einem Nutzer basierend auf seinen Shared Storage-Daten angezeigt werden sollen, ohne die zugrunde liegenden gespeicherten Daten preiszugeben.

Wenn Sie Inhalte basierend auf websiteübergreifenden Daten datenschutzfreundlich präsentieren möchten, können Sie die Select URL API verwenden. Die Select URL API eignet sich gut für Anwendungsfälle wie:

  • A/B-Tests für Inhalte, um eine einheitliche Nutzererfahrung auf mehreren Websites zu gewährleisten.
  • Nutzern mit und ohne Konto wird eine unterschiedliche Anmeldeschaltfläche angezeigt.
  • Werbe-Creatives rotieren lassen, um einzuschränken, wie oft ein Nutzer dieselbe Anzeige auf mehreren Websites sieht.

Was ist die Select URL API?

Mit der Select URL API können Sie anhand von websiteübergreifenden Daten eine URL aus einer Reihe von URLs auswählen. Die API basiert auf Shared Storage und verwendet ein SharedStorageWorklet, um die verfügbaren websiteübergreifenden Daten zu lesen und eine der bereitgestellten URLs auszuwählen. Die ausgewählte URL wird an den Aufrufer zurückgegeben, sodass sie nur in einem Fenced Frame gelesen werden kann. Die URL kann bis mindestens 2026 auch in einem iFrame gerendert werden.

Diagramm mit dem in die Websites verschiedener Publisher eingebetteten shoes.example-iFrame, darunter news.example und blog.example. Die Website „shoes.com“ kann von jeder Website der obersten Ebene aus auf ihren eigenen unpartitionierten Speicher zugreifen.

Im vorherigen Diagramm kann die Website shoes.example in andere Publisher-Websites wie news.example eingebettet werden und trotzdem über „URL mit Shared Storage auswählen“ auf dieselben Daten zugreifen, um die entsprechenden Inhalte zum Einbetten auszuwählen.

So funktioniert „URL auswählen“

Mit der Select URL API können Sie eine URL auswählen, die mithilfe von websiteübergreifenden Daten in einem eingezäunten Frame oder Iframe gerendert werden soll. Mit JavaScript können Sie websiteübergreifende Daten in Shared Storage lesen und schreiben. Anschließend können Sie anhand der gespeicherten Daten eine URL aus einer bereitgestellten Liste auswählen.

Auf jeder registrierten Website oder jedem registrierten Ursprung können Daten in Shared Storage geschrieben werden. Websites können diese Daten dann nur mit der Select URL API lesen.

Die gerenderte URL kann beliebige Inhalte enthalten, z. B. Anzeigen, Artikel, Bilder, HTML und Calls-to-Action (z. B. Schaltflächen).

In diesem Beispiel betreiben Sie eine Reisewebsite und führen eine Werbekampagne mit drei verschiedenen Anzeigen-Creatives durch. Sie möchten die Anzeigen basierend auf den Nutzerinteraktionen (Aufruf oder Klick) in einer bestimmten Reihenfolge präsentieren.

Drei Anzeigen-Creatives, die Nutzern basierend auf ihren bisherigen Interaktionen präsentiert werden
Im ersten Creative für einen neuen Zuschauer heißt es: „Go on your next adventure.“ (Geh auf dein nächstes Abenteuer.) Nachdem der Nutzer die Anzeige gesehen, aber nicht geklickt hat, wird ihm als Nächstes eine Anzeige mit dem Text „Entdecken Sie Wochenendtrips“ präsentiert. Nachdem Nutzer das dritte Creative gesehen oder darauf geklickt haben, werden sie aufgefordert, auf „Hier klicken, um Hotelrabatt zu erhalten“ zu klicken. Wenn der Nutzer auf die erste Anzeige klickt, wird ihm als Nächstes das dritte Creative präsentiert.

Wenn auf einer Website zum ersten Mal ein Anzeigenbereich mit einer gewonnenen Auktion beobachtet wird, können Sie eine ID und den Klickstatus für das Creative im Shared Storage speichern.

Beispiel:

await sharedStorage.set('last-creative', 'globe');
await sharedStorage.set('click', 'true');

Wenn Sie also eine Anzeigenauktion auf anderen Websites gewinnen, die dieser Nutzer besucht, können Sie basierend auf diesen Daten eine andere Anzeige präsentieren.

Shared Storage-Ablauf mit drei Anzeigen-Creatives und Nutzerinteraktion.

Ihr JavaScript wird in einem SharedStorageWorklet ausgeführt, um diese Informationen abzurufen. Ihr Code kann jedoch nicht mit dem iframe oder Fenced Frame auf der übergeordneten Seite interagieren oder außerhalb davon kommunizieren.

Ein weiteres Beispiel: Sie möchten testen, welcher Artikel in einem eingebetteten Kontext besser abschneidet. Um dies zu testen, können Sie einem Nutzer eine Testgruppe zuweisen, wenn er Ihre Website besucht, und dann die Gruppen-ID in Shared Storage speichern, damit sie in einem websiteübergreifenden Kontext aufgerufen werden kann. Auf einer anderen Website können Sie die Select URL API verwenden, um die am besten geeignete URL für die Darstellung in einem Fenced Frame auszuwählen. Die Auswahl basiert auf der Testgruppe des Nutzers, die in Shared Storage gespeichert ist.

Mit „URL auswählen“ können Sie fundierte Entscheidungen auf Grundlage von websiteübergreifenden Daten treffen, ohne Nutzerinformationen wie den Browserverlauf oder andere personenbezogene Daten an eine Einbettungswebsite weiterzugeben oder Daten auf Ihre eigenen Server zu übertragen.

Budgets

Um das Risiko von websiteübergreifenden Datenlecks zu minimieren, verwendet die Select URL API ein Budgetierungssystem mit einer Kombination aus langfristigen und kurzfristigen Budgets:

  • Langfristiges Budget: Das langfristige Budget beträgt bei Verwendung von selectURL() 12 Bit pro aufrufender Website und Tag. Dieses Budget wird nur berechnet, wenn im Frame, in dem die ausgewählte URL gehostet wird, eine Navigation auf oberster Ebene erfolgt. Die Kosten werden dann als log2(number of URLs) berechnet. Wenn Sie also 8 URLs zur Auswahl angeben, betragen die Kosten 3 Bits. Das verbleibende Budget für den Tag wird als 12 - (sum of bits deducted in the last 24 hours) berechnet. Wenn nicht genügend Budget übrig ist, wird die Standard-URL (die erste URL in der Liste) zurückgegeben und 1 Bit protokolliert, wenn die Standard-URL aufgerufen wird.
  • Kurzfristige Budgets: Kurzfristige Budgets sind zusätzliche Limits auf Seitenladebasis, bis Fenced Frames vollständig durchgesetzt werden und Event-Level-Berichte verfügbar sind. Es gibt ein Budget von 6 Bit pro aufrufender Website und Seitenaufbau, das begrenzt, wie viele Informationen eine einzelne aufrufende Website über selectURL() weitergeben kann. Außerdem gibt es ein Budget von insgesamt 12 Bit pro Seitenaufruf, das ein kombiniertes Limit für alle aufrufenden Websites auf einer Seite ist.

    Mit gespeicherten Abfragen können Sie ein vorheriges selectURL()-Ergebnis auf derselben Seite wiederverwenden und so die kurzfristige Budgetnutzung reduzieren. Wenn selectURL() zum ersten Mal mit einem gespeicherten Abfragenamen aufgerufen wird, wird der resultierende Index für die Lebensdauer der Seite gespeichert. Wenn selectURL() bei Folgeaufrufen mit demselben Namen der gespeicherten Abfrage aufgerufen wird, wird der gespeicherte Index zurückgegeben und der registrierte Vorgang wird nicht ausgeführt. In diesem Fall wird das Budget nur bei der ersten Verwendung belastet, nicht bei einer erneuten Verwendung während desselben Seitenaufrufs, da keine neuen Informationen angezeigt werden.

    Sie können gespeicherte Abfragen implementieren, indem Sie dem Optionenobjekt die Eigenschaft „savedQuery“ mit dem gewünschten Abfragenamen hinzufügen, wie in diesem Beispiel gezeigt.

    const topProductUrls = [
      { url: 'https://ad.example/default-top-product.html' },
      { url: 'https://ad.example/experiment-top-product.html' }];
    const relatedProductUrls = [
      { url: 'https://ad.example/default-related-product.html' },
      { url: 'https://ad.example/experiment-related-product.html' }];
    
    // This is the first call to `selectURL()` with `savedQuery: 'control_or_experiment'`
    // on this page, so it will be charged to both per-page budgets.
    const topProductsConfig = await sharedStorage.selectURL(
      'productExperiment', topProductUrls, {
        savedQuery: 'control_or_experiment',
        keepAlive: true,
        resolveToConfig: true
    });
    document.getElementById('topProductsFencedFrame').config = topProductsConfig;
    
    // This next call with this savedQuery won't charge either of the per-page budgets.
    const relatedProductConfig = await sharedStorage.selectURL(
      'productExperiment', relatedProductUrls, {
        savedQuery: 'control_or_experiment',
        resolveToConfig: true
    });
    document.getElementById("relatedProductFencedFrame").config = relatedProductConfig;
    
    gestartet wird.

Anwendungsfälle für die URL API auswählen

Wenn Sie eine Website mit Funktionen erstellen, die über verschiedene Domains hinweg funktionieren müssen, haben Sie möglicherweise einen der folgenden Anwendungsfälle:

  • Anzeigen-Creatives rotieren: Sie können einschränken, wie oft ein Nutzer dieselbe Anzeige auf mehreren Websites sieht. Dazu werden Daten wie Creative-ID, Anzahl der Aufrufe und Nutzerinteraktionen gespeichert, um zu ermitteln, welche Creatives Nutzer auf verschiedenen Websites sehen. So können Sie die Anzahl der Aufrufe ausgleichen und eine Übersättigung mit bestimmten Inhalten vermeiden, um ein möglicherweise negatives Nutzererlebnis zu begrenzen. Weitere Informationen zu diesem Anwendungsfall finden Sie unter Werbe-Creatives rotieren.
  • Creative nach Häufigkeit auswählen: Speichern Sie die Anzahl der Browseraufrufe in Shared Storage, um zu begrenzen, wie oft ein Nutzer dieselbe Anzeige auf mehreren Websites sieht. Weitere Informationen zu diesem Anwendungsfall finden Sie unter Creative nach Häufigkeit auswählen.
  • Nutzererfahrung für bekannte Kunden anpassen: Bieten Sie eine einheitliche Nutzererfahrung auf Ihren verschiedenen Domains. Benutzerdefinierte Inhalte und Calls-to-Action basierend auf dem Registrierungsstatus oder anderen Nutzerstatus bereitstellen und ein einheitliches Nutzererlebnis auf Ihren verschiedenen Domains bieten Weitere Informationen zu diesem Anwendungsfall finden Sie unter Nutzererfahrung für bekannte Kunden anpassen.
  • A/B-Tests durchführen: Bei einem A/B-Test werden zwei oder mehr Versionen einer Konfiguration verglichen, um festzustellen, welche am besten funktioniert. Sie können einen Nutzer einer Testgruppe zuweisen und diese Gruppe dann im Shared Storage für den websiteübergreifenden Zugriff speichern. So können Sie Informationen zum Nutzerverhalten in Ihrem Netzwerk von Websites sammeln, ohne einzelne Nutzer zu erfassen. Weitere Informationen zu diesem Anwendungsfall

Mit der Select URL API mit Shared Storage können Sie diese Anwendungsfälle entwickeln, indem Sie auf verschiedenen Websites der obersten Ebene auf denselben Speicher zugreifen.

Demo ausprobieren

Sie können mit der Funktion „URL auswählen“ in der Shared Storage-Demo experimentieren.

Diese Demo wird aus der Perspektive eines Werbetreibenden, eines Ad-Tech-Unternehmens, eines Content-Distributors oder eines anderen Drittanbieterdienstes erstellt, der Informationen auf den Websites verschiedener Publisher speichern möchte. In der Demo wird für jeden Anwendungsfall derselbe Drittanbietercode auf den Websites von Publisher A und Publisher B ausgeführt. Auf der Seite jedes Publishers können Sie sehen, wie die Daten websiteübergreifend weitergegeben werden.

Sie können sich den Code für die Demo auch auf GitHub ansehen.

API-Status

Die Select URL API ist allgemein verfügbar. Wenn Sie die Select URL API verwenden oder für die lokale Entwicklung aktivieren möchten, folgen Sie der Anleitung zur Registrierung für die Privacy Sandbox.

Vorschlag Status
Berichte auf Ereignisebene für die Inhaltsauswahl (selectURL()) Mindestens bis 2026 verfügbar
Budgetierung pro Website
Erläuterung
Verfügbar in M119
Fehlerbehebung bei Shared Storage-Worklets mithilfe der DevTools-Seite
Verfügbar in M120

Feedback geben

Der Vorschlag für die Select URL API befindet sich in der aktiven Diskussion und Entwicklung und kann sich daher ändern.

Wir freuen uns auf Ihr Feedback zur Select URL API.