यूआरएल की खास जानकारी चुनें

Select URL की मदद से, यह चुना जा सकता है कि किसी उपयोगकर्ता को उसके शेयर किए गए स्टोरेज के डेटा के आधार पर कौनसा कॉन्टेंट दिखाया जाए. हालांकि, इसमें सेव किया गया डेटा नहीं दिखाया जाता.

अगर आपको अलग-अलग साइटों के डेटा के आधार पर कॉन्टेंट दिखाना है, तो Select URL API का इस्तेमाल किया जा सकता है. इससे निजता का उल्लंघन नहीं होगा. 'यूआरएल चुनें' एपीआई, इन जैसे इस्तेमाल के उदाहरणों के लिए अच्छी तरह से काम करता है:

  • एक से ज़्यादा साइटों पर उपयोगकर्ताओं को एक जैसा अनुभव देने के लिए, कॉन्टेंट की A/B टेस्टिंग.
  • जिन उपयोगकर्ताओं के पास खाता है और जिनके पास खाता नहीं है उनके लिए अलग-अलग लॉगिन बटन दिखाना.
  • विज्ञापन क्रिएटिव रोटेट करना, ताकि किसी उपयोगकर्ता को अलग-अलग साइटों पर एक ही विज्ञापन बार-बार न दिखे.

Select URL API क्या है?

Select URL API की मदद से, अलग-अलग साइटों के डेटा के आधार पर यूआरएल का सेट चुना जा सकता है. यह एपीआई, Shared Storage पर बनाया गया है. यह उपलब्ध क्रॉस-साइट डेटा को पढ़ने और दिए गए यूआरएल में से किसी एक को चुनने के लिए, SharedStorageWorklet का इस्तेमाल करता है. चुने गए यूआरएल को कॉलर को इस तरह से दिखाया जाता है कि उसे सिर्फ़ फ़ेन्स्ड फ़्रेम में पढ़ा जा सके. इस यूआरएल को कम से कम 2026 तक iframe में भी रेंडर किया जा सकता है.

इस डायग्राम में दिखाया गया है कि shoes.example का iframe, अलग-अलग पब्लिशर की साइटों में एम्बेड किया गया है. इनमें news.example और blog.example शामिल हैं. shoes.com साइट, हर टॉप-लेवल साइट से अपने अनपार्टिशन किए गए स्टोरेज को ऐक्सेस कर सकती है.

ऊपर दिए गए डायग्राम में, shoes.example साइट को news.example जैसी अन्य पब्लिशर साइटों में एम्बेड किया जा सकता है. साथ ही, यह अब भी शेयर किए गए स्टोरेज के साथ Select URL का इस्तेमाल करके, उसी डेटा को ऐक्सेस कर सकती है. इससे एम्बेड करने के लिए सही कॉन्टेंट चुना जा सकता है.

'यूआरएल चुनें' सुविधा कैसे काम करती है

Select URL API का इस्तेमाल करके, किसी यूआरएल को चुना जा सकता है. इस यूआरएल को क्रॉस-साइट डेटा का इस्तेमाल करके, फ़ेन्स्ड फ़्रेम या iframe में रेंडर किया जा सकता है. शेयर किए गए स्टोरेज में अलग-अलग साइटों से जुड़े डेटा को पढ़ने और लिखने के लिए, JavaScript का इस्तेमाल करें. इसके बाद, सेव किए गए डेटा के आधार पर दी गई सूची से कोई यूआरएल चुनें.

रजिस्टर की गई कोई भी साइट या ऑरिजिन, शेयर किए गए स्टोरेज में डेटा लिख सकता है. इसके बाद, साइटें सिर्फ़ Select URL API की मदद से उस डेटा को पढ़ सकती हैं.

रेंडर किए गए यूआरएल में किसी भी तरह का कॉन्टेंट शामिल हो सकता है: विज्ञापन, लेख, इमेज, एचटीएमएल, कॉल-टू-ऐक्शन (जैसे कि बटन) वगैरह.

इस उदाहरण में, आपने यात्रा से जुड़ी कोई साइट चलाई है और तीन अलग-अलग विज्ञापन क्रिएटिव के साथ कोई विज्ञापन कैंपेन चलाया है. आपको उपयोगकर्ता की गतिविधियों (व्यू या क्लिक) के आधार पर, इन क्रिएटिव को क्रम से दिखाना है.

तीन विज्ञापन क्रिएटिव, जो उपयोगकर्ताओं को उनके पिछले इंटरैक्शन के आधार पर दिखाए जाते हैं.
पहली बार वीडियो देखने वाले व्यक्ति के लिए, क्रिएटिव में लिखा है, "अपनी अगली रोमांचक यात्रा पर निकलें." सिर्फ़ विज्ञापन देखने और क्लिक न करने पर, उपयोगकर्ता को अगला क्रिएटिव दिखता है. इसमें लिखा होता है, "वीकेंड पर घूमने-फिरने की जगहें एक्सप्लोर करें." तीसरा क्रिएटिव देखने या उस पर क्लिक करने के बाद, लोगों को "होटल में छूट पाने के लिए क्लिक करें" का सुझाव दिया जाता है. अगर उपयोगकर्ता पहले विज्ञापन पर क्लिक करता है, तो उसे अगला विज्ञापन तीसरे क्रिएटिव वाला दिखेगा.

जब कोई साइट पहली बार सबसे अच्छा परफ़ॉर्म करने वाले विज्ञापन स्पेस को देखती है, तब शेयर किए गए स्टोरेज में उस क्रिएटिव के लिए आईडी और क्लिक की स्थिति सेव की जा सकती है.

उदाहरण के लिए:

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

इसका मतलब है कि जब आपको इस उपयोगकर्ता की विज़िट की गई अन्य साइटों पर विज्ञापन नीलामी में जीत मिलती है, तब उस डेटा के आधार पर कोई दूसरा विज्ञापन दिखाया जा सकता है.

तीन विज्ञापन क्रिएटिव और उपयोगकर्ता के इंटरैक्शन के साथ Shared Storage के बारे में जानकारी देने वाला वीडियो.

यह जानकारी पाने के लिए, आपका JavaScript कोड SharedStorageWorklet में चलता है. हालांकि, आपका कोड पैरंट पेज पर iframe या फ़ेंस किए गए फ़्रेम के बाहर इंटरैक्ट या कम्यूनिकेट नहीं कर सकता.

एक और उदाहरण के तौर पर, आपको यह टेस्ट करना पड़ सकता है कि एम्बेड किए गए कॉन्टेक्स्ट में कौनसा लेख बेहतर परफ़ॉर्म करेगा. इसे टेस्ट करने के लिए, अपनी साइट पर किसी उपयोगकर्ता को एक्सपेरिमेंट ग्रुप में असाइन किया जा सकता है. इसके बाद, उस ग्रुप के आईडी को Shared Storage में सेव किया जा सकता है, ताकि उसे क्रॉस-साइट कॉन्टेक्स्ट में ऐक्सेस किया जा सके. किसी दूसरी साइट पर, Select URL API का इस्तेमाल करके, फ़ेंस किए गए फ़्रेम में रेंडर करने के लिए सबसे सही यूआरएल चुना जा सकता है. यह यूआरएल, उपयोगकर्ता के एक्सपेरिमेंट ग्रुप के आधार पर चुना जाता है. इस ग्रुप की जानकारी, शेयर किए गए स्टोरेज में सेव की जाती है.

यूआरएल चुनने की सुविधा का इस्तेमाल करके, अलग-अलग साइटों के डेटा के आधार पर सोच-समझकर फ़ैसले लिए जा सकते हैं. इसके लिए, उपयोगकर्ता की जानकारी (जैसे कि ब्राउज़र का इतिहास या अन्य निजी जानकारी) को एम्बेड करने वाली साइट के साथ शेयर करने या अपने सर्वर पर डेटा को एक्सफ़िल्ट्रेट करने की ज़रूरत नहीं होती.

बजट मैनेज करना

अलग-अलग साइटों के बीच डेटा लीक होने के जोखिम को कम करने के लिए, Select URL API एक बजटिंग सिस्टम का इस्तेमाल करता है. इसमें लंबी अवधि और कम अवधि के बजट का कॉम्बिनेशन होता है:

  • लंबे समय के लिए बजट: selectURL() का इस्तेमाल करने पर, लंबे समय के लिए बजट हर दिन, कॉल करने वाली हर साइट के लिए 12 बिट होता है. इस बजट के लिए, सिर्फ़ तब शुल्क लिया जाता है, जब चुने गए यूआरएल को होस्ट करने वाला फ़्रेम टॉप-लेवल नेविगेशन करता है. इस मामले में, लागत का हिसाब log2(number of URLs) के तौर पर लगाया जाता है. इसलिए, अगर आपने चुनने के लिए आठ यूआरएल दिए हैं, तो इसकी लागत तीन बिट होगी. दिन के बचे हुए बजट का हिसाब 12 - (sum of bits deducted in the last 24 hours) के तौर पर लगाया जाता है. अगर बजट खत्म हो गया है, तो डिफ़ॉल्ट यूआरएल (सूची में पहला यूआरएल) दिखाया जाता है. साथ ही, अगर डिफ़ॉल्ट यूआरएल पर नेविगेट किया जाता है, तो 1 बिट लॉग किया जाता है.
  • कम समय के लिए बजट: कम समय के लिए बजट, हर पेज लोड के आधार पर तय की गई अतिरिक्त सीमाएं होती हैं. ये सीमाएं तब तक लागू होती हैं, जब तक फ़ेंस किए गए फ़्रेम पूरी तरह से लागू नहीं हो जाते और इवेंट-लेवल की रिपोर्टिंग उपलब्ध रहती है. कॉल करने वाली हर साइट के लिए, हर पेज लोड पर छह बिट का बजट होता है. इससे यह तय होता है कि कॉल करने वाली कोई साइट, selectURL() का इस्तेमाल करके कितना डेटा लीक कर सकती है. इसके अलावा, हर पेज लोड के लिए कुल 12 बिट का बजट भी होता है. यह किसी पेज पर कॉल करने वाली सभी साइटों के लिए तय की गई कुल सीमा होती है.

    सेव की गई क्वेरी की मदद से, selectURL() पिछले नतीजे को उसी पेज पर फिर से इस्तेमाल किया जा सकता है. इससे कम समय के लिए बजट का इस्तेमाल कम हो जाता है. जब selectURL() को सेव किए गए क्वेरी के नाम के साथ पहली बार कॉल किया जाता है, तो नतीजे के तौर पर मिलने वाले इंडेक्स को पेज के लाइफ़टाइम के लिए सेव किया जाता है. अगर फ़ॉलो-अप कॉल के लिए, सेव की गई एक ही क्वेरी के नाम के साथ selectURL() को कॉल किया जाता है, तो सेव किया गया इंडेक्स वापस कर दिया जाएगा. साथ ही, रजिस्टर किया गया ऑपरेशन नहीं चलेगा. इस मामले में, बजट का शुल्क सिर्फ़ पहली बार इस्तेमाल करने पर लिया जाता है. हालांकि, पेज लोड होने के दौरान दोबारा इस्तेमाल करने पर कोई शुल्क नहीं लिया जाता, क्योंकि कोई नई जानकारी नहीं दिखाई जाती.

    सेव की गई क्वेरी को लागू करने के लिए, options ऑब्जेक्ट में savedQuery प्रॉपर्टी जोड़ें. साथ ही, अपनी चुनी गई क्वेरी का नाम डालें. इस उदाहरण में दिखाया गया है.

    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;
    

यूआरएल एपीआई के इस्तेमाल के उदाहरण चुनना

अगर आपको ऐसी वेबसाइट बनानी है जिसकी सुविधाएं अलग-अलग डोमेन पर काम करती हैं, तो आपके पास इनमें से कोई एक विकल्प हो सकता है:

  • विज्ञापन क्रिएटिव रोटेट करें: यह कुकी, डेटा सेव करती है. जैसे, क्रिएटिव आईडी, व्यू की संख्या, और उपयोगकर्ता का इंटरैक्शन. इससे यह तय किया जाता है कि उपयोगकर्ताओं को अलग-अलग साइटों पर कौनसे क्रिएटिव दिखें. इससे यह तय किया जा सकता है कि किसी उपयोगकर्ता को अलग-अलग साइटों पर एक ही विज्ञापन कितनी बार दिखे. इससे आपको व्यू की संख्या को संतुलित करने और किसी कॉन्टेंट को बार-बार दिखाए जाने से रोकने में मदद मिलती है. इससे लोगों को खराब अनुभव मिलने की संभावना कम हो जाती है. इस इस्तेमाल के उदाहरण के बारे में ज़्यादा जानने के लिए, विज्ञापन क्रिएटिव रोटेट करना लेख पढ़ें.
  • फ़्रीक्वेंसी के हिसाब से विज्ञापन क्रिएटिव चुनें: Shared Storage में स्टोर ब्राउज़र व्यू की संख्या सेव करें, ताकि यह तय किया जा सके कि किसी उपयोगकर्ता को अलग-अलग साइटों पर एक ही विज्ञापन कितनी बार दिखाया जाए. इस्तेमाल के इस तरीके के बारे में ज़्यादा जानने के लिए, फ़्रीक्वेंसी के हिसाब से विज्ञापन क्रिएटिव चुनना लेख पढ़ें.
  • जान-पहचान वाले खरीदारों के लिए उपयोगकर्ता अनुभव को पसंद के मुताबिक बनाएं: अपने अलग-अलग डोमेन पर एक जैसा अनुभव दें. उपयोगकर्ता की रजिस्ट्रेशन स्थिति या अन्य स्थितियों के आधार पर, कस्टम कॉन्टेंट और कॉल-टू-ऐक्शन शेयर करें. साथ ही, अपने अलग-अलग डोमेन पर एक जैसा अनुभव दें. इस्तेमाल के इस तरीके के बारे में ज़्यादा जानने के लिए, जान-पहचान वाले ग्राहकों के लिए उपयोगकर्ता अनुभव को पसंद के मुताबिक बनाना लेख पढ़ें.
  • A/B टेस्टिंग करें: A/B टेस्ट में, किसी कॉन्फ़िगरेशन के दो या उससे ज़्यादा वर्शन की तुलना की जाती है. इससे यह पता चलता है कि कौनसे वर्शन की परफ़ॉर्मेंस सबसे अच्छी है. किसी उपयोगकर्ता को एक्सपेरिमेंट ग्रुप में असाइन किया जा सकता है. इसके बाद, उस ग्रुप को Shared Storage में सेव किया जा सकता है, ताकि उसे अलग-अलग साइटों पर ऐक्सेस किया जा सके. इससे आपको अपने नेटवर्क की साइटों पर, लोगों को ट्रैक किए बिना उनके व्यवहार के बारे में अहम जानकारी मिलती है. इस इस्तेमाल के उदाहरण के बारे में ज़्यादा जानकारी के लिए, A/B टेस्टिंग करना लेख पढ़ें.

Shared Storage के साथ Select URL API का इस्तेमाल करके, इन उदाहरणों को डेवलप किया जा सकता है. इसके लिए, अलग-अलग टॉप-लेवल साइटों पर एक ही स्टोरेज का ऐक्सेस होना ज़रूरी है.

डेमो आज़माकर देखें

Shared Storage के डेमो का इस्तेमाल करके, Select URL को आज़माया जा सकता है.

यह डेमो, विज्ञापन देने वाले व्यक्ति या कंपनी, विज्ञापन टेक्नोलॉजी, कॉन्टेंट डिस्ट्रिब्यूटर या तीसरे पक्ष की किसी ऐसी सेवा के हिसाब से बनाया गया है जो अलग-अलग पब्लिशर की साइटों पर जानकारी सेव करना चाहती है. डेमो में, हर इस्तेमाल के उदाहरण के लिए, तीसरे पक्ष का एक ही कोड, पब्लिशर A और पब्लिशर B, दोनों की साइटों पर चलता है. हर पब्लिशर के पेज पर जाएं और देखें कि क्रॉस-साइट कॉन्टेक्स्ट में डेटा कैसे शेयर किया जाता है.

GitHub पर जाकर, डेमो के लिए कोड की समीक्षा भी की जा सकती है.

एपीआई की स्थिति

Select URL API, सामान्य रूप से उपलब्ध है. Select URL API का इस्तेमाल करने या इसे लोकल डेवलपमेंट के लिए चालू करने के लिए, Privacy Sandbox में रजिस्टर करने से जुड़े निर्देशों का पालन करें.

प्रस्ताव स्थिति
कॉन्टेंट चुनने के लिए इवेंट-लेवल रिपोर्टिंग (selectURL()) कम से कम 2026 तक उपलब्ध रहेगा
हर साइट के हिसाब से बजट तय करना
जानकारी
M119 में उपलब्ध है
DevTools की मदद से, Shared Storage के वर्कलेट डीबग करना
सेक्शन
M120 में उपलब्ध है

सुझाव/राय देना या शिकायत करना

ध्यान दें कि Select URL API के सुझाव पर अभी चर्चा चल रही है और इसे डेवलप किया जा रहा है. इसलिए, इसमें बदलाव हो सकता है.

हमें Select URL API के बारे में आपके सुझाव/राय का इंतज़ार है.