การใช้ดีลหรือที่เรียกว่ามาร์เก็ตเพลสส่วนตัว (PMP) ในการประมูลที่ใช้ Protected Audience API
ภาพรวม
ดีลหรือที่เรียกว่ามาร์เก็ตเพลสส่วนตัว (PMP) จะให้สิทธิ์เข้าถึงที่มีการดูแลจัดการหรือราคาที่ต้องการแก่ผู้ซื้อในพื้นที่โฆษณาชุดย่อย เพื่อช่วยสนับสนุนดีลแบบเป็นโปรแกรม จะมีการใช้รหัสที่นั่งและรหัสดีลตามขั้นตอนต่อไปนี้
- รหัสที่นั่งมาจากผู้ซื้อ และเป็นตัวระบุที่แสดงถึงลูกค้าของผู้ซื้อ รหัสใบอนุญาตอาจมีผลกับการเรียกเก็บเงิน เช่น ในกรณีที่ใบอนุญาตที่มีส่วนลดจากผู้ขายหนึ่งๆ
- รหัสดีลมาจากผู้ซื้อหรือผู้ขาย และเป็นตัวระบุที่แสดงถึงข้อตกลงระหว่างผู้ซื้อกับผู้ขาย รหัสดีลอาจมีพร็อพเพอร์ตี้ เช่น ต้นทุน/ราคา ปริมาณสัญญาผูกมัด ข้อมูลกลุ่มเป้าหมาย ความมีเอกสิทธิ์ และอื่นๆ
Protected Audience ช่วยให้ทำดีลได้ง่ายขึ้นโดยใช้รหัสการรายงาน ซึ่งช่วยให้รหัสที่นั่งและดีลพร้อมใช้งานสำหรับการเสนอราคา การประมูล การให้คะแนน และการรายงาน รหัสการรายงานเป็นกลไกที่บริษัทเทคโนโลยีโฆษณาใช้รับรหัสดีลและรหัสที่นั่งเหล่านี้ในการรายงาน Protected Audience หลังการประมูลเพื่อทำธุรกรรมดีลและจัดระเบียบการเรียกเก็บเงิน เราคาดหวังว่าผู้ซื้อ ผู้ขาย เอเจนซี และผู้ลงโฆษณาอาจมีกลยุทธ์ที่ออกแบบมาโดยเฉพาะเพื่อตีความและทำความเข้าใจรหัสดีลและรหัสที่นั่งที่ตนได้รับ
คำแนะนำแบบทีละขั้น
ขั้นตอนในการส่งเสริมดีลในการประมูลที่ใช้ Protected Audience API มีดังนี้
- ผู้ซื้อจะลงทะเบียนดีลและรหัสที่นั่งในการกำหนดค่ากลุ่มความสนใจก่อนการประมูลทำงาน
- คุณสามารถตั้งค่ารหัสดีลและรหัสที่นั่งในช่องรหัสการรายงานที่เลือกได้ (
selectableBuyerAndSellerReportingIds
) - หากรหัสที่นั่งในดีลทั้งหมดเหมือนกัน คุณสามารถตั้งค่ารหัสที่นั่งใน
buyerAndSellerReportingId
และกำหนดรหัสดีลในช่องรหัสการรายงานที่เลือกได้ (selectableBuyerAndSellerReportingIds
)
- คุณสามารถตั้งค่ารหัสดีลและรหัสที่นั่งในช่องรหัสการรายงานที่เลือกได้ (
- ในระหว่างการสร้างราคาเสนอ รหัสดีลและรหัสใบอนุญาตจะพร้อมใช้งาน ผู้ซื้อเลือกรหัสดีลจาก
selectableBuyerAndSellerReportingIds
ผู้ซื้อสร้างราคาเสนอที่มีรหัสดีลที่เชื่อมโยงกับราคาเสนอนั้นโดยส่งคืนselectedBuyerAndSellerReportingId
การเสนอราคาจะชนะการประมูลได้ก็ต่อเมื่อรหัสดีลที่แสดงผลเป็นแบบไม่ระบุตัวบุคคลแบบ K ควบคู่ไปกับรหัสการรายงานอื่นๆ และพร็อพเพอร์ตี้ที่เลือกของกลุ่มความสนใจ - ในระหว่างการให้คะแนนโฆษณา ผู้ขายจะเห็นดีลและรหัสที่นั่งที่เลือก
- รหัสดีลและรหัสที่นั่งจะปรากฏในฟังก์ชันการรายงานของผู้ขาย
- รหัสดีลและรหัสที่นั่งจะพร้อมใช้งานในฟังก์ชันการรายงานของผู้ซื้อ
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
(หากมี) เจ้าของกลุ่มความสนใจ, URL สคริปต์การเสนอราคา, URL การนําเสนอผล และขนาดโฆษณา (ขนาดโฆษณาจะยกเว้นจากการตรวจสอบนี้จนถึงไตรมาสที่ 1 ปี 2025 เป็นอย่างน้อย)
แม้จะมีการกำหนด selectablebuyerAndSellerReportingIds
ในการกำหนดค่ากลุ่มความสนใจแล้ว แต่ generateBid()
ก็ยังคงมีสิทธิ์แสดงราคาเสนอที่ไม่มี selectedbuyerAndSellerReportingId
ในกรณีนี้ รหัสการรายงานที่ให้ไว้ในฟังก์ชันการรายงานหากราคาเสนอนี้ชนะ จะเป็นไปตามลักษณะการทำงานของรหัสการรายงานที่เลือกไม่ได้
ในกรณีที่มีการเรียกใช้ generateBid()
ซ้ำเนื่องจากคำเรียกใช้ครั้งแรกไม่ได้สร้างราคาเสนอที่มีโฆษณาที่ผ่านการตรวจสอบการไม่ระบุตัวบุคคลตาม k-anonymity selectableBuyerAndSellerReportingIds
ที่ไม่ผ่านการตรวจสอบการไม่ระบุตัวบุคคลตาม k-anonymity จะไม่ปรากฏในกลุ่มความสนใจในการเรียกใช้ซ้ำ
3. รหัสดีลและรหัสที่นั่งสำหรับผู้ขายในระหว่างการให้คะแนนโฆษณา
scoreAd()
จะเข้าถึงรหัสดีลที่เลือกพร้อมกับรหัสที่นั่งได้ (หากมี) ผู้ขายจะต้องให้คะแนนความพอใจของราคาเสนอที่ชนะ โดยพิจารณาจากรหัสดีลและเงื่อนไขพิเศษใดๆ หากผู้ขายไม่ได้ใช้รหัสดีลที่ผู้ซื้อเลือก ผู้ขายจะปฏิเสธการเสนอราคาโดยให้คะแนนความต้องการเป็นศูนย์หรือติดลบ
function scoreAd(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds, // 'deal456'
} = browserSignals;
// ...
}
4. รหัสดีลและรหัสใบอนุญาตสำหรับการรายงานของผู้ขาย
โปรดทราบว่าราคาเสนอจะชนะการประมูลได้ก็ต่อเมื่อ selectedBuyerAndSellerReportingId
, buyerAndSellerReportingId
(หากมี) และ buyerReportingId
(หากมี) เป็นแบบไม่ระบุตัวบุคคลระดับ k กับเจ้าของกลุ่มความสนใจ, URL สคริปต์การเสนอราคา, URL การนําเสนอ และขนาดโฆษณา (ระบบจะไม่รวมขนาดโฆษณาในการตรวจสอบนี้จนกว่าจะถึงไตรมาสที่ 1 ปี 2025 เป็นอย่างน้อย) ดังนั้น ค่ารหัสการรายงานที่มี selectedBuyerAndSellerReportingId
จะแสดงอยู่ใน reportResult()
เสมอ โปรดทราบว่าแม้จะมีการตรวจสอบ buyerReportingId
เพื่อหา k-anonymity ค่าจะมีให้ในฟังก์ชันการรายงานของผู้ซื้อเท่านั้น และจะไม่พร้อมใช้งานในฟังก์ชันการรายงานผู้ขายที่นี่
function reportResult(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds // 'deal456'
} = browserSignals;
// ...
}
5. รหัสดีลและรหัสใบอนุญาตสําหรับการรายงานของผู้ซื้อ
แนวคิดเดียวกันจากการรายงานผู้ขายจะใช้กับการรายงานผู้ซื้อ โปรดทราบว่าราคาเสนอจะชนะการประมูลได้ก็ต่อเมื่อ selectedBuyerAndSellerReportingId
, buyerAndSellerReportingId
(หากมี) และ buyerReportingId
(หากมี) เป็นแบบไม่ระบุตัวบุคคลระดับ k กับเจ้าของกลุ่มความสนใจ, URL สคริปต์การเสนอราคา, URL การนําเสนอ และขนาดโฆษณา (ระบบจะไม่รวมขนาดโฆษณาในการตรวจสอบนี้จนกว่าจะถึงไตรมาสที่ 1 ปี 2025 เป็นอย่างน้อย) ดังนั้น ค่ารหัสการรายงานที่มี selectedBuyerAndSellerReportingId
จะอยู่ใน reportWin()
เสมอ
function reportWin(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingId // 'deal456'
buyerReportingId // 'brid123' - Not used for deals, but the value is available
} = browserSignals;
}
มีส่วนร่วมและแชร์ความคิดเห็น
- ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสการรายงานได้ที่ส่วนรหัสการรายงานของคําอธิบายกลุ่มเป้าหมายที่ได้รับการคุ้มครอง
- GitHub: ถามคําถามและติดตามการพูดคุยในปัญหาที่เก็บ API
- W3C: พูดคุยเกี่ยวกับกรณีการใช้งานของอุตสาหกรรมในการโทรผ่าน WICG
- ประกาศ: เข้าร่วมหรือดูรายชื่ออีเมล
- ทีมสนับสนุนนักพัฒนาแอป Privacy Sandbox: ถามคำถามและเข้าร่วมการสนทนาในที่เก็บการสนับสนุนนักพัฒนาซอฟต์แวร์ของ Privacy Sandbox
- Chromium: รายงานข้อบกพร่องของ Chromium เพื่อสอบถามคำถามเกี่ยวกับการนำใช้งานที่พร้อมให้ทดสอบใน Chrome