Protected Audience के तहत आने वाले ऑफ़र

Protected Audience API से जुड़ी नीलामी में डील लागू करना. इसे प्राइवेट मार्केटप्लेस (पीएमपी) भी कहा जाता है

खास जानकारी

डील को प्राइवेट मार्केटप्लेस (पीएमटी) भी कहा जाता है. ये खरीदारों को इन्वेंट्री के सबसेट पर, खास ऐक्सेस या पसंदीदा कीमत का विकल्प देती हैं. प्रोग्रामैटिक डील को आसान बनाने के लिए, सीट आईडी और डील आईडी का इस्तेमाल किया जाता है:

  • सीट आईडी, खरीदार से मिलता है. यह एक ऐसा आइडेंटिफ़ायर है जो खरीदार के ग्राहक को दिखाता है. सीट आईडी से बिलिंग पर असर पड़ सकता है. उदाहरण के लिए, अगर किसी सीट पर किसी सेलर से छूट मिली है.
  • डील आईडी, खरीदार या विक्रेता बनाता है. यह एक आइडेंटिफ़ायर होता है, जो खरीदार और विक्रेता के बीच हुए समझौते को दिखाता है. डील आईडी में कई प्रॉपर्टी हो सकती हैं. जैसे, लागत/कीमत, वॉल्यूम कमिटमेंट, ऑडियंस की जानकारी, एक्सक्लूसिविटी वगैरह.

Protected Audience, रिपोर्टिंग आईडी का इस्तेमाल करके डील को आसान बनाता है. इससे सीट और डील आईडी, नीलामी की बिडिंग, स्कोरिंग, और रिपोर्टिंग के लिए उपलब्ध हो जाते हैं. रिपोर्टिंग आईडी, विज्ञापन टेक्नोलॉजी कंपनियों को नीलामी के बाद की Protected Audience रिपोर्टिंग में ये डील और सीट आईडी पाने का तरीका उपलब्ध कराते हैं. इससे वे डील कर पाती हैं और बिलिंग की प्रोसेस को व्यवस्थित कर पाती हैं. हम उम्मीद करते हैं कि खरीदारों, सेलर, एजेंसियों, और विज्ञापन देने वाले लोगों या कंपनियों के पास, उन्हें मिले डील और सीट आईडी को समझने और उनकी व्याख्या करने के लिए, खास रणनीतियां हो सकती हैं.

कदम-दर-कदम निर्देश

Protected Audience API से जुड़ी नीलामी में डील को आसान बनाने का तरीका यहां दिया गया है:

  1. नीलामी शुरू होने से पहले, खरीदार दिलचस्पी वाले ग्रुप के कॉन्फ़िगरेशन में डील और सीट आईडी रजिस्टर करता है
    • डील और सीट आईडी, चुने जा सकने वाले रिपोर्टिंग आईडी फ़ील्ड (selectableBuyerAndSellerReportingIds) में सेट किए जा सकते हैं.
    • अगर सभी डील के लिए सीट आईडी एक ही है, तो उस सीट आईडी को buyerAndSellerReportingId में सेट किया जा सकता है. साथ ही, डील आईडी को चुने जा सकने वाले रिपोर्टिंग आईडी फ़ील्ड (selectableBuyerAndSellerReportingIds) में सेट किया जा सकता है.
  2. बिड जनरेट करने के दौरान, डील और सीट आईडी उपलब्ध हो जाते हैं. खरीदार, selectableBuyerAndSellerReportingIds से डील आईडी चुनता है. खरीदार, बिड जनरेट करता है. इसमें selectedBuyerAndSellerReportingId को वापस भेजकर, उस बिड से जुड़ा डील आईडी शामिल होता है. कोई बिड सिर्फ़ तब नीलामी जीत सकती है, जब लौटाया गया डील आईडी, अन्य रिपोर्टिंग आईडी और दिलचस्पी वाले ग्रुप की चुनिंदा प्रॉपर्टी के साथ k-anonymous हो.
  3. विज्ञापन स्कोरिंग के दौरान, चुनी गई डील और सीट आईडी, सेलर के लिए उपलब्ध हो जाते हैं.
  4. सेलर के रिपोर्टिंग फ़ंक्शन में, डील और सीट आईडी उपलब्ध हो जाते हैं.
  5. डील और सीट आईडी, खरीदार के रिपोर्टिंग फ़ंक्शन में उपलब्ध हो जाते हैं.

1. डील और सीट आईडी का रजिस्ट्रेशन

नीलामी शुरू होने से पहले, खरीदार डील और सीट आईडी को इंटरेस्ट ग्रुप कॉन्फ़िगरेशन में रजिस्टर करता है. डील और सीट आईडी को selectableBuyerAndSellerReportingIds में स्ट्रिंग के ऐरे के तौर पर सेट किया जाता है. अगर सभी डील के लिए सीट आईडी एक ही है और उन्हें दोहराने की ज़रूरत नहीं है, तो सीट आईडी को buyerAndSellerReportingId फ़ील्ड में जोड़ा जा सकता है. यह फ़ील्ड एक स्ट्रिंग स्वीकार करता है:

const interestGroupConfig = {
  owner: 'https://buyer.example',
  name: 'example-ig',
  ad: [
    {
      renderURL: 'https://buyer.example/ad.html',
      selectableBuyerAndSellerReportingIds: ['deal123', 'deal456', 'deal789'], // Deal IDs
      buyerAndSellerReportingId: 'seat123', // Seat ID

      // Though it is not used to facilitate deals, the buyer
      // reporting ID can be defined with other reporting IDs
      buyerReportingId: 'brid123'
    },
  ],
};

navigator.joinAdInterestGroup(interestGroupConfig);

अगर डील के लिए सीट आईडी अलग है, तो इस सेटअप का इस्तेमाल किया जा सकता है:

const interestGroupConfig = {
  owner: 'https://buyer.example',
  name: 'example-ig',
  ad: [
    {
      renderURL: 'https://buyer.example/ad.html',
      selectableBuyerAndSellerReportingIds: [
        'deal123seat123',
        'deal456seat456',
        'deal789seat456'
      ], // Deal and Seat IDs
    },
  ],
};

navigator.joinAdInterestGroup(interestGroupConfig);

2. बिड जनरेट करने के दौरान खरीदारों के लिए डील और सीट आईडी

बिड जनरेट करने के दौरान, खरीदार यह तय करता है कि उसे डील आईडी पर बिड करनी है या नहीं. generateBid() में खरीदार, selectableBuyerAndSellerReportingIds से डील आईडी चुन सकता है और वैल्यू को selectedBuyerAndSellerReportingId के तौर पर दिखा सकता है. अगर चुना गया डील आईडी, selectableBuyerAndSellerReportingIds ऐरे में नहीं है, तो बिड को अस्वीकार कर दिया जाता है.

function generateBid(interestGroup, ...) {
  const [{
    buyerAndSellerReportingId, // 'seat123'
    selectableBuyerAndSellerReportingIds // ['deal123', 'deal456', 'deal789']
    buyerReportingId // 'brid123' - Not used for deals, but the value is available
  }] = interestGroup.ads;

  // ...

  return {
    bid: 1,
    render: 'https://buyer.example/ad.html',
    selectedBuyerAndSellerReportingId: 'deal456', // Buyer selects a deal ID
  };
}

selectedbuyerAndSellerReportingId के लिए दिखाई गई वैल्यू वाली बिड, नीलामी में सिर्फ़ तब जीत सकती है, जब selectedbuyerAndSellerReportingId की वैल्यू, buyerAndSellerReportingId (अगर मौजूद है), buyerReportingId (अगर मौजूद है), दिलचस्पी वाले ग्रुप के मालिक, बिडिंग स्क्रिप्ट के यूआरएल, रेंडर यूआरएल, और विज्ञापन के साइज़ के साथ मिलकर k-anonymous हो. विज्ञापन के साइज़ को इस जांच से तब तक बाहर रखा गया है, जब तक कि कम से कम पहली तिमाही 2025 न आ जाए.

भले ही, selectablebuyerAndSellerReportingIds को दिलचस्पी वाले ग्रुप के कॉन्फ़िगरेशन में तय किया गया हो, लेकिन generateBid() के लिए अब भी ऐसी बिड दिखाना मान्य है जिसमें selectedbuyerAndSellerReportingId शामिल नहीं है. इस मामले में, अगर यह बिड जीत जाती है, तो रिपोर्टिंग फ़ंक्शन को दिए गए रिपोर्टिंग आईडी, न चुने जा सकने वाले रिपोर्टिंग आईडी के व्यवहार का पालन करेंगे.

अगर generateBid() को फिर से चलाया जाता है, क्योंकि पहली बार चलाने पर ऐसे विज्ञापन वाली कोई भी बिड नहीं मिली जो के-एनॉनिमिटी की जांच में पास हुई हो, तो फिर से चलाने पर, दिलचस्पी वाले ग्रुप में ऐसे selectableBuyerAndSellerReportingIds नहीं दिखेंगे जो के-एनॉनिमिटी की जांच में पास नहीं हुए हैं.

3. विज्ञापन स्कोरिंग के दौरान, सेलर के लिए डील और सीट आईडी

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

function scoreAd(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'seat123'
    selectedBuyerAndSellerReportingIds, // 'deal456'
  } = browserSignals;

  // ...
}

4. सेलर रिपोर्टिंग के लिए, डील और सीट आईडी

याद रखें कि कोई बिड सिर्फ़ तब नीलामी जीत सकती है, जब selectedBuyerAndSellerReportingId, buyerAndSellerReportingId (अगर मौजूद है), और buyerReportingId (अगर मौजूद है) को दिलचस्पी वाले ग्रुप के मालिक, बिडिंग स्क्रिप्ट के यूआरएल, रेंडर यूआरएल, और विज्ञापन के साइज़ के साथ के-एनोनिमस किया गया हो. विज्ञापन के साइज़ को इस जांच से तब तक बाहर रखा गया है, जब तक कम से कम पहली तिमाही 2025 नहीं आ जाती. इसलिए, selectedBuyerAndSellerReportingId को शामिल करने वाली रिपोर्टिंग आईडी वैल्यू, हमेशा reportResult() में उपलब्ध रहेंगी. ध्यान दें कि भले ही, buyerReportingId को k-anonymity के लिए चुना गया हो, लेकिन यह वैल्यू सिर्फ़ खरीदार की रिपोर्टिंग फ़ंक्शन के लिए उपलब्ध है. यहां सेलर की रिपोर्टिंग फ़ंक्शन के लिए उपलब्ध नहीं है.

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'seat123'
    selectedBuyerAndSellerReportingIds // 'deal456'
  } = browserSignals;

  // ...
}

5. खरीदार की रिपोर्टिंग के लिए, डील और सीट आईडी

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

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'seat123'
    selectedBuyerAndSellerReportingId // 'deal456'
    buyerReportingId // 'brid123' - Not used for deals, but the value is available
  } = browserSignals;
}

उपयोग करना और सुझाव/राय देना या शिकायत करना