วัดข้อมูลและผลลัพธ์ของการประมูล Protected Audience API
บทความนี้จะกล่าวถึงภาพรวมระดับสูงของกลไกต่างๆ ที่ใช้รายงานข้อมูลการประมูลของ Protected Audience API ไปยังเซิร์ฟเวอร์ รวมถึงกลไกการเปลี่ยนผ่านที่ใช้ได้ในขณะนําไปใช้ในระหว่างการย้ายข้อมูลจนกว่าโซลูชันอื่นจะพร้อมใช้งาน
หากต้องการรายงานเกี่ยวกับเมตริกที่สําคัญซึ่งรวบรวมจากการประมูลโฆษณา Protected Audience API จะทํางานร่วมกับสิ่งต่อไปนี้
- การรวมข้อมูลส่วนตัวซึ่งรวบรวมสัญญาณและผลลัพธ์การประมูลเพื่อสร้างรายงานสรุป
- Ads Reporting API สําหรับเฟรมที่มีรั้วล้อมและ iframe ซึ่งเป็นช่องทางภายในเฟรมเพื่อสื่อสารกับเวิร์กเลตของ Protected Audience API API นี้ช่วยให้คุณเชื่อมโยงข้อมูลระดับเหตุการณ์กับสัญญาณการประมูลได้ การรายงานระดับเหตุการณ์ของ Ads Reporting API เป็นกลไกการเปลี่ยนผ่านจนกว่าจะมีการออกแบบกลไกการรายงานที่เน้นความเป็นส่วนตัวมากขึ้น
- การรายงานการระบุแหล่งที่มา ซึ่งช่วยให้คุณเชื่อมโยงข้อมูล Conversion กับสัญญาณการประมูลได้
- พื้นที่เก็บข้อมูลที่ใช้ร่วมกัน ซึ่งช่วยให้คุณเขียนสัญญาณการประมูลไปยังพื้นที่เก็บข้อมูลข้ามแหล่งที่มาได้ จากนั้นจึงรายงานข้อมูลดังกล่าวในภายหลังโดยใช้การรวบรวมข้อมูลส่วนตัว
ภาพรวมการรายงาน Protected Audience API

ระยะเวลาหลักๆ 3 ระยะที่ระบบจะรายงานข้อมูลจากขั้นตอนการประมูลของ Protected Audience API ไปยังเซิร์ฟเวอร์ของคุณ ได้แก่ เวลาที่ประมูลเมื่อมีการประมูลจากเว็บไซต์ของผู้เผยแพร่โฆษณา เวลาแสดงผลเมื่อโฆษณาแสดงผลเป็นเฟรมที่มีรั้วล้อมหรือ iframe ในเว็บไซต์ของผู้เผยแพร่โฆษณา และเวลาที่เกิด Conversion เมื่อผู้ใช้ดําเนินการบางอย่างในเว็บไซต์อื่นซึ่งระบุแหล่งที่มาเป็นประมูล
ในระหว่างการประมูล คุณสามารถรายงานข้อมูลการประมูลได้โดยใช้เวิร์กเลตการรายงาน ในระหว่างเวลาแสดงผล คุณสามารถรายงานข้อมูลการมีส่วนร่วมจาก iframe หรือเฟรมที่มีการกำหนดเขตได้ ในระหว่างช่วงเวลาเกิด Conversion คุณสามารถรายงานข้อมูลการระบุแหล่งที่มาจากหน้าปลายทางได้โดยใช้ Attribution Reporting API
สถานที่ตั้งในการรายงาน
ในการประมูล ผู้ซื้อสามารถรายงานสัญญาณที่มีอยู่ในเวิร์กเลต generateBid()
และ reportWin()
ส่วนผู้ขายสามารถรายงานสัญญาณที่มีอยู่ใน scoreAd()
และ reportResult()
นอกการประมูล ผู้ซื้อและผู้ขายสามารถรายงานข้อมูลจากเฟรมที่แสดงผลโฆษณา และจากเว็บไซต์ที่เกิด Conversion ได้
ระยะเวลา | ปลายทาง | ตำแหน่ง | มีข้อมูล | Reporting API ที่พร้อมใช้งาน |
การประมูล | ผู้ซื้อ | generateBid() |
สัญญาณ ผลการประมูล และประสิทธิภาพการประมูล | Private Aggregation API |
reportWin() |
Private Aggregation API Ads Reporting API |
|||
ผู้ขาย | scoreAd() |
Private Aggregation API | ||
reportResult() |
Private Aggregation API Ads Reporting API |
|||
แสดงผล | ผู้ซื้อ / ผู้ขาย | เฟรมในเว็บไซต์ของผู้เผยแพร่โฆษณา | ข้อมูลระดับเหตุการณ์ภายในเฟรมโฆษณา | Private Aggregation API Ads Reporting API |
Conversion | ผู้ซื้อ / ผู้ขาย | เว็บไซต์ Conversion | ข้อมูล Conversion และระดับเหตุการณ์จากเว็บไซต์ Conversion | Attribution Reporting API Private Aggregation API Ads Reporting API |
ในช่วงระยะเวลาที่ระบุไว้ ผู้ซื้อและผู้ขายจะมีสิทธิ์เข้าถึง Reporting API ต่างๆ เพื่อรายงานข้อมูล เช่น สัญญาณการประมูล ข้อมูลระดับเหตุการณ์ และข้อมูล Conversion
ข้อมูลที่มีให้ภายในการประมูล Protected Audience API
ข้อมูลต่อไปนี้พร้อมให้รายงานจากชิ้นงาน Protected Audience API ระหว่างการประมูล
สัญญาณ
สัญญาณคือข้อมูลบริบทการประมูล ข้อมูลผู้ใช้ ข้อมูลเรียลไทม์ และข้อมูลเบราว์เซอร์ที่ผู้ซื้อและผู้ขายมีให้ใช้งานภายในเวิร์กเลตเพื่อสร้างราคาเสนอ ให้คะแนนโฆษณา และรายงานผลการประมูล
สัญญาณ | คำอธิบาย | ตั้งค่าตำแหน่ง | ผู้ใช้ | ความพร้อมใช้งาน |
auctionSignals | ข้อมูลที่มีอยู่ในบริบทของสถานที่จัดประมูล ข้อมูลนี้อาจรวมถึงข้อมูลเนื้อหาหน้าเว็บ ข้อมูลผู้ใช้บุคคลที่หนึ่ง และอื่นๆ | ผู้ขายตั้งค่าจากเว็บไซต์ของผู้เผยแพร่โฆษณาในการกําหนดค่าการประมูล | ผู้ซื้อ ผู้ขาย |
generateBid scoreAd reportWin reportResult |
directFromSellerSignals | ข้อมูลเดียวกันสำหรับ auctionSignals , perBuyerSignals , sellerSignals แต่รับประกันว่าสัญญาณมาจากผู้ขายที่ระบุ |
ตั้งค่าผ่านส่วนหัวการตอบกลับ HTTP จากผู้ขาย | ผู้ซื้อ ผู้ขาย |
generateBid scoreAd reportWin reportResult |
browserSignals | ข้อมูลต่างๆ ที่เบราว์เซอร์ระบุ (topWindowHostname , interestGroupOwner , renderUrl , adComponents , biddingDurationMsec , IGJoinCount , IGRecency , modelingSignals ) |
ตั้งค่าโดยเบราว์เซอร์ | ผู้ซื้อ ผู้ขาย |
generateBid scoreAd reportWin reportResult |
sellerSignals | สัญญาณที่ให้แก่ผู้ขายเพื่อการให้คะแนนโฆษณา | ผู้ขายตั้งค่าจากเว็บไซต์ของผู้เผยแพร่โฆษณาในการกําหนดค่าการประมูล | ผู้ขาย | scoreAd reportWin reportResult |
trustedScoringSignals | สัญญาณแบบเรียลไทม์ที่ให้แก่ผู้ขายสำหรับการให้คะแนนโฆษณา | ผู้ขายเป็นผู้ตั้งค่า URL จากเว็บไซต์ของผู้เผยแพร่โฆษณาในการกําหนดค่าการประมูล | ผู้ขาย | scoreAd reportResult |
perBuyerSignals | ข้อมูลบริบทการประมูลที่ระบุให้ผู้ซื้อบางราย ผู้ขายสามารถเรียกดูมูลค่าสำหรับผู้ซื้อได้ก่อนที่การประมูลจะเริ่มขึ้น ข้อมูลนี้เป็นความรู้ของผู้ซื้อเกี่ยวกับโอกาสในการโฆษณา | ผู้ขายตั้งค่าจากเว็บไซต์ของผู้เผยแพร่โฆษณาในการกําหนดค่าการประมูล | ผู้ซื้อ | generateBid scoreAd reportWin reportResult |
trustedBiddingSignals | สัญญาณแบบเรียลไทม์ที่ให้แก่ผู้ซื้อสำหรับการเสนอราคาโฆษณา | ผู้ซื้อจะตั้งค่า URL จากเว็บไซต์ของผู้ลงโฆษณาเมื่อตั้งค่ากลุ่มความสนใจ | ผู้ซื้อ | generateBid |
userBiddingSignals | ข้อมูลผู้ใช้ที่ได้จากผู้ซื้อ | ผู้ซื้อตั้งค่าจากเว็บไซต์ของผู้ลงโฆษณาเมื่อตั้งค่ากลุ่มความสนใจ | ผู้ซื้อ | generateBid |
ออบเจ็กต์ auction config คือแหล่งที่มาหลักของข้อมูลที่ให้ไว้เพื่อใช้เป็นสัญญาณในเวิร์กเลต ผู้เผยแพร่โฆษณาและผู้ขายสามารถระบุข้อมูลตามบริบทและข้อมูลบุคคลที่หนึ่งในการกำหนดค่าการประมูล และสัญญาณเหล่านี้สามารถเพิ่มประสิทธิภาพด้วยข้อมูลกลุ่มความสนใจจากผู้ซื้อ ข้อมูลระดับเหตุการณ์จากเฟรมการแสดงโฆษณา และข้อมูลการระบุแหล่งที่มาจากหน้าคลิกผ่าน ข้อมูลที่รายงานสามารถใช้สำหรับการรายงานผู้ซื้อ/ผู้ขาย การเรียกเก็บเงิน การกําหนดงบประมาณ การฝึกโมเดล ML และอื่นๆ
ข้อมูลอื่นๆ ที่มี
- ข้อมูลผลลัพธ์ที่เกี่ยวข้องกับข้อมูลการชนะและการแพ้การประมูล เช่น ราคาเสนอที่ชนะและเหตุผลในการปฏิเสธราคาเสนอ
- ข้อมูลประสิทธิภาพที่มีข้อมูลเวลาในการตอบสนอง เช่น ระยะเวลาในการดึงข้อมูลและเรียกใช้เวิร์กเลตการเสนอราคา
ข้อมูลที่มีให้นอกการประมูล Protected Audience API
นอกเหนือจากการประมูลของ Protected Audience API แล้ว ข้อมูลจะพร้อมให้รายงานได้ในช่วง 2 ช่วงเวลา
ในระหว่างการแสดงผล เมื่อโฆษณาแสดงผลในเว็บไซต์ของผู้เผยแพร่โฆษณา ข้อมูลระดับเหตุการณ์จากภายใน iframe หรือเฟรมที่มีการกำหนดเขตสามารถเชื่อมโยงกับข้อมูลการประมูลของ Protected Audience API และรายงานไปยังเซิร์ฟเวอร์ได้ ตัวอย่างข้อมูลระดับเหตุการณ์ ได้แก่ การแสดงโฆษณา การคลิกผ่าน การโฮเวอร์ และเหตุการณ์อื่นๆ ที่เกิดขึ้นภายในเฟรม
ในระหว่างเวลาที่เกิด Conversion เมื่อผู้ใช้ดําเนินการบางอย่างในหน้าคลิกผ่านซึ่งมีการระบุแหล่งที่มาเป็นราคาเสนอ ข้อมูลระดับเหตุการณ์จากหน้า Conversion จะเชื่อมโยงกับข้อมูลราคาเสนอของ Protected Audience API และรายงานไปยังเซิร์ฟเวอร์ได้
การรายงานระดับเหตุการณ์
รายงานระดับเหตุการณ์จะแสดงรายละเอียดข้อมูลจากเหตุการณ์อย่างน้อย 1 รายการ เหตุการณ์อาจเป็นการชนะการประมูล การแสดงโฆษณา หรือ Conversion จนถึงปี 2026 เป็นอย่างน้อย การรายงานการชนะการประมูลระดับเหตุการณ์จะยังคงอยู่ ไม่จำเป็นต้องใช้เฟรมที่มีการกำหนดเขตเพื่อแสดงผลโฆษณากลุ่มเป้าหมายที่ได้รับการคุ้มครอง และสามารถใช้ iframe ที่มีสิทธิ์เข้าถึงเครือข่ายแบบไม่จำกัดสําหรับการรายงานระดับเหตุการณ์ นอกจากนี้ Ads Reporting API ยังพร้อมใช้งานในเฟรมที่มีการกำหนดเขตและ iframe เพื่อให้คุณเชื่อมโยงข้อมูลการประมูลและ Conversion กับข้อมูลระดับเหตุการณ์จากเฟรมได้ การดำเนินการนี้ออกแบบมาเพื่อให้ระบบนิเวศมีเส้นทางที่ง่ายขึ้นในการย้ายข้อมูล เนื่องจากคุณจะใช้โครงสร้างพื้นฐานการรายงานที่มีอยู่ได้ต่อไปอย่างน้อยจนถึงปี 2026 ขณะย้ายข้อมูลระบบไปยังกลุ่มเป้าหมายที่ได้รับการคุ้มครอง
การรายงานการชนะการประมูลระดับเหตุการณ์ด้วย sendReportTo()
กลไกที่ใช้รายงานข้อมูลระดับเหตุการณ์ภายในการประมูล Protected Audience คือ sendReportTo() function
ในการประมูลที่ชนะ ฟังก์ชันนี้พร้อมใช้งานในเวิร์กเลตการรายงานสำหรับผู้ซื้อและผู้ขาย และเบราว์เซอร์จะส่งคําขอ GET
ไปยังสตริง URL ที่ระบุเมื่อการนําเสนอโฆษณาเริ่มต้นขึ้น คุณสามารถเข้ารหัสสัญญาณที่มีอยู่ในชิ้นงานเป็นพารามิเตอร์การค้นหาของ URL ได้
ตัวอย่างเช่น ผู้ซื้อสามารถรายงานจำนวนเงินราคาเสนอที่ชนะจากเวิร์กเลต reportWin()
เพื่อวัตถุประสงค์ในการเรียกเก็บเงินได้ ดังนี้
// Buyer reporting worklet
function reportWin(auctionSignals, perBuyerSignals, sellerSignals, browserSignals, directFromSellerSignals) {
sendReportTo(`https://buyer-reporting-server.example/reporting?bid=${browserSignals.bid}`);
}
ฟังก์ชัน sendReportTo()
สามารถใช้เพื่อสร้างรายงาน Conversion ที่ชนะสำหรับผู้ขายเมื่อเรียกใช้จาก reportResult()
และรายงาน Conversion ที่ชนะสำหรับผู้ซื้อเมื่อเรียกใช้จาก reportWin()
ฟังก์ชัน sendReportTo()
จะใช้งานได้จนถึงปี 2026 เป็นอย่างน้อย
รายงานการมีส่วนร่วม
รายงานการมีส่วนร่วมมีข้อมูลระดับเหตุการณ์จากครีเอทีฟโฆษณา เช่น ข้อมูลการแสดงผลหรือการคลิกที่เชื่อมโยงกับสัญญาณของการประมูล Protected Audience API ที่แสดงผลโฆษณา เนื่องจากโฆษณาจะแสดงผลหลังจากการประมูลสิ้นสุดลง สัญญาณการประมูลจึงใช้ไม่ได้ภายในเฟรมที่แสดงผลโฆษณา หากต้องการเชื่อมโยงข้อมูลเหล่านี้จากช่วงเวลาต่างๆ เรามีกลไกการเปลี่ยนผ่าน 2 รายการในการสร้างรายงานการมีส่วนร่วม
ฟังก์ชัน sendReportTo()
ที่อธิบายไว้ข้างต้นสามารถใช้เพื่อเชื่อมโยงข้อมูลการประมูลกับข้อมูลระดับเหตุการณ์จาก iframe ได้ แต่จะใช้งานกับเฟรมที่มีการกำหนดเขตไม่ได้เนื่องจากไม่สามารถส่งรหัสที่ไม่ซ้ำกันจากผู้ฝัง เนื่องจากการสื่อสารระหว่างผู้ฝังกับเฟรมที่มีการกำหนดเขตถูกจํากัด หากต้องการเชื่อมโยงข้อมูลการประมูลกับข้อมูลระดับเหตุการณ์จากโฆษณาเฟรมที่กั้น คุณจะสามารถใช้ Ads Reporting API
Ads Reporting API สําหรับเฟรมที่มีการกำหนดเขตและ iframe
Ads Reporting API สําหรับเฟรมที่มีรั้วล้อมและ iframe มีกลไกสําหรับคุณในการเชื่อมโยงข้อมูลระดับเหตุการณ์ของผู้ใช้จากเฟรมโฆษณากับสัญญาณในการประมูลของกลุ่มเป้าหมายที่ได้รับการคุ้มครอง
ในเวิร์กเลตการรายงาน Protected Audience API คุณสามารถลงทะเบียนบีคอนโฆษณาด้วยฟังก์ชัน registerAdBeacon()
และส่ง URL การรายงานพร้อมสัญญาณที่เพิ่มเป็นพารามิเตอร์การค้นหา นอกจากนี้ คุณยังระบุเหตุการณ์ที่กําหนดเองที่ต้องการเชื่อมโยงกับ URL การรายงานได้ด้วย จากนั้นในภายหลังเมื่อโฆษณาแสดงผลในเฟรมที่มีการกำหนดขอบเขต คุณจะทริกเกอร์เหตุการณ์ที่กําหนดเองได้โดยเรียกใช้ฟังก์ชัน window.fence.reportEvent()
คุณสามารถเพิ่มข้อมูลที่พร้อมใช้งานภายในเฟรมที่มีรั้วล้อมเป็นเพย์โหลดได้
ฟังก์ชัน registerAdBeacon()
ใช้ได้เฉพาะในฟังก์ชันการรายงานเท่านั้น และไม่สามารถใช้ได้ในตรรกะการเสนอราคาของผู้ซื้อและตรรกะการให้คะแนนของผู้ขาย
ในตัวอย่างต่อไปนี้ รหัสแคมเปญจะเชื่อมโยงกับเพย์โหลดระดับเหตุการณ์ที่มีพิกัดคลิก
// 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']
});
นอกจากนี้ Fenced Frames Ads Reporting API จะพร้อมใช้งานจนถึงปี 2026 เป็นอย่างน้อยด้วยเหตุผลเดียวกับการรายงาน Conversion
ดูข้อมูลแบบเจาะลึกได้ที่คำอธิบาย
การเข้าถึงเครือข่ายแบบไม่จำกัด
เฟรมที่มีรั้วรอบขอบชิดจะอนุญาตให้โหลดทรัพยากรเครือข่ายในลักษณะเดียวกับที่ iframe โหลด และคุณสามารถส่งข้อมูลระดับเหตุการณ์ภายในเฟรมที่มีรั้วรอบขอบชิดไปยังเซิร์ฟเวอร์ได้ คุณสามารถสร้างรายงานระดับเหตุการณ์ฝั่งเซิร์ฟเวอร์ในภายหลังโดยเชื่อมโยงข้อมูลระดับเหตุการณ์จากเฟรมที่มีการกำหนดขอบเขตกับข้อมูลการประมูลที่ส่งพร้อมกับ sendReportTo()
ซึ่งได้อธิบายไว้ในส่วนกลไกการรายงานระดับเหตุการณ์การประมูลด้านบน
การเข้าถึงเครือข่ายจะถูกจำกัดในอนาคต
รายงานการระบุแหล่งที่มา
รายงานการระบุแหล่งที่มาช่วยให้คุณเชื่อมโยง Conversion ในเว็บไซต์กับโฆษณาที่เลือกจากการประมูลของ Protected Audience API ได้ เช่น ผู้ใช้อาจคลิกโฆษณาผลิตภัณฑ์ที่คุณแสดง จากนั้นระบบเปลี่ยนเส้นทางไปยังเว็บไซต์ของผู้ลงโฆษณา ผู้ใช้ทำการซื้อในเว็บไซต์ดังกล่าว และคุณสนใจที่จะระบุแหล่งที่มาของการซื้อนั้นว่ามาจากโฆษณาที่แสดง Attribution Reporting API จะผสานรวมกับ Protected Audience API เพื่อรวมข้อมูลการประมูลจากเว็บไซต์ของผู้เผยแพร่โฆษณาและข้อมูล Conversion จากเว็บไซต์ของผู้ลงโฆษณา
ในระหว่างที่เราออกแบบโซลูชันถาวรมากขึ้น คุณสามารถใช้ Ads Reporting API สําหรับเฟรมที่มีการกำหนดเขตเป็นกลไกการเปลี่ยนผ่านในการสร้างรายงานระดับเหตุการณ์และรายงานที่รวบรวมได้ด้วยการรายงานการระบุแหล่งที่มา โปรดทราบว่ารายงานเหล่านี้มีไว้สําหรับการวัด Conversion และแยกต่างหากจากรายงานการมีส่วนร่วมระดับเหตุการณ์และรายงานการมีส่วนร่วมที่รวบรวมได้ซึ่งสร้างขึ้นจากการประมูลและเฟรมโฆษณา เราจะเผยแพร่คำอธิบายเกี่ยวกับวิธีแก้ปัญหาที่ถาวรยิ่งขึ้นเมื่อพร้อม
กลไกการเปลี่ยนผ่าน
เมื่อลงทะเบียนบีคอนโฆษณา คุณสามารถใช้คีย์เวิร์ด reserved.top_navigation
ซึ่งจะเพิ่มส่วนหัว Attribution-Reporting-Eligible
ให้กับบีคอนโดยอัตโนมัติเพื่อให้มีสิทธิ์ลงทะเบียนเป็นแหล่งที่มาของการระบุแหล่งที่มา
registerAdBeacon({
'reserved.top_navigation': 'https://adtech.example/click?buyer_event_id=123',
});
หากต้องการแนบข้อมูลระดับเหตุการณ์กับบีคอนที่คุณลงทะเบียนไว้ ให้เรียก setReportEventDataForAutomaticBeacons()
จากเฟรมที่มีรั้วล้อมด้วยเพย์โหลดเหตุการณ์
window.fence.setReportEventDataForAutomaticBeacons({
eventType: 'reserved.top_navigation',
eventData: 'data from the frame',
destination:['seller', 'buyer']
})
ดูข้อมูลเพิ่มเติมได้ที่ส่วนการรายงานการระบุแหล่งที่มาของคำอธิบาย Ads Reporting API
ตัวอย่างการรายงานการมีส่วนร่วมและ Conversion
ในตัวอย่างนี้ เราจะพิจารณาจากมุมมองของผู้ซื้อที่สนใจเชื่อมโยงข้อมูลจากการประมูล เฟรมโฆษณา และเว็บไซต์ Conversion เข้าด้วยกัน
ในเวิร์กโฟลว์นี้ ผู้ซื้อจะประสานงานกับผู้ขายเพื่อส่งรหัสที่ไม่ซ้ำกันในการประมูล ในระหว่างการประมูล ผู้ซื้อจะส่งรหัสที่ไม่ซ้ำกันนี้พร้อมกับข้อมูลการประมูล ในระหว่างการแสดงผลและเวลาที่เกิด Conversion ระบบจะส่งข้อมูลจากเฟรมที่มีการกำหนดเขตหรือ iframe ออกไปด้วยรหัสที่ไม่ซ้ำกันเดียวกัน ภายหลัง คุณจะใช้รหัสที่ไม่ซ้ำกันนี้เพื่อเชื่อมโยงรายงานเหล่านี้เข้าด้วยกันได้
เวิร์กโฟลว์:
- ก่อนการประมูลจะเริ่มขึ้น ผู้ซื้อจะส่งรหัสที่ไม่ซ้ำกันไปยังผู้ขายโดยเป็นส่วนหนึ่งของการตอบกลับราคาเสนอแบบเรียลไทม์ ("RTB") แบบเป็นโปรแกรม คุณสามารถตั้งค่ารหัสเป็นตัวแปรได้ เช่น
auctionId
ระบบจะส่งรหัสเป็นperBuyerSignals
ในauctionConfig
และรหัสจะพร้อมใช้งานในเวิร์กเลตของผู้ซื้อ - ในระหว่างการประมูล ผู้ซื้อสามารถลงทะเบียนบีคอนโฆษณาให้ทริกเกอร์ระหว่างเวลาแสดงโฆษณาและเวลาเกิด Conversion (
registerAdBeacon()
)- หากต้องการเชื่อมโยงสัญญาณการประมูลสําหรับเหตุการณ์เฟรมโฆษณา ให้ตั้งค่า
auctionId
เป็นพารามิเตอร์การค้นหาของ URL บีคอน - หากต้องการเชื่อมโยงสัญญาณการประมูลสําหรับเหตุการณ์ Conversion ให้ตั้งค่า
auctionId
ใน URL ของบีคอน
- หากต้องการเชื่อมโยงสัญญาณการประมูลสําหรับเหตุการณ์เฟรมโฆษณา ให้ตั้งค่า
- ในระหว่างการแสดงโฆษณา บีคอนที่คุณลงทะเบียนไว้ในระหว่างการประมูลจะทริกเกอร์หรือปรับปรุงด้วยข้อมูลระดับเหตุการณ์ได้
- ทริกเกอร์เหตุการณ์เฟรมด้วย
reportEvent()
และส่งข้อมูลระดับเหตุการณ์ - เพิ่มเพย์โหลดระดับเหตุการณ์ลงในบีคอนการระบุแหล่งที่มาด้วย
setReportEventDataForAutomaticBeacons()
- ลงทะเบียนโฆษณากับ Attribution Reporting API โดยตอบกลับคําขอบีคอนโฆษณาด้วยส่วนหัว
Attribution-Reporting-Register-Source
- ทริกเกอร์เหตุการณ์เฟรมด้วย
- ในระหว่างเวลาที่เกิด Conversion คุณสามารถทริกเกอร์แหล่งที่มาที่ลงทะเบียนไว้ในช่วงเวลาการประมูล
หลังจากกระบวนการข้างต้น ผู้ซื้อจะมีรายงานการประมูล รายงานการมีส่วนร่วม และรายงาน Conversion ซึ่งทั้งหมดเชื่อมโยงกันด้วยคีย์ที่ไม่ซ้ำกันเพียงรายการเดียวที่สามารถใช้เชื่อมโยงกันได้
ผู้ขายจะใช้เวิร์กโฟลว์ที่คล้ายกันนี้หากต้องการเข้าถึงข้อมูลการระบุแหล่งที่มา และผู้ขายยังใช้รหัสที่ไม่ซ้ำกันเพื่อส่งพร้อมกับ registerAdBeacon()
ได้ด้วย จากเฟรม การเรียกใช้ reportEvent()
มีพร็อพเพอร์ตี้ปลายทางที่ใช้ส่งรายงานไปยังทั้งผู้ซื้อและผู้ขายได้ โปรดทราบว่า SSP จะต้องแสดงในหน้า Landing Page ด้วยเพื่อให้ระบบระบุแหล่งที่มาของทริกเกอร์
การรวบรวมข้อมูลกลุ่มเป้าหมายที่ได้รับการคุ้มครอง
Private Aggregation API เป็นกลไกที่ใช้รายงานข้อมูลกลุ่มเป้าหมายที่ได้รับการคุ้มครองเพื่อสร้างรายงานสรุป ซึ่งเป็นรายงานแบบรวมที่อาจมีข้อมูลรบกวนซึ่งรวบรวมจากที่เก็บข้อมูล ที่เก็บข้อมูลจะแสดงด้วยคีย์การรวม และสามารถเข้ารหัสข้อมูลบางอย่างลงในคีย์ได้
เช่น กิจกรรมการแสดงโฆษณาอาจนับรวมไว้ในที่เก็บข้อมูลที่แตกต่างกัน โดยที่แต่ละที่เก็บข้อมูลแสดงถึงแคมเปญโฆษณาที่แตกต่างกัน รายงานสรุปแตกต่างจากรายงานระดับเหตุการณ์ตรงที่ไม่เปิดเผยข้อมูลเกี่ยวกับแต่ละเหตุการณ์ รายงานระดับเหตุการณ์ช่วยให้คุณทราบว่าผู้ใช้ ก ข และ ค เห็นแคมเปญ 123 รายงานสรุปช่วยให้คุณวัดจํานวนผู้ใช้ที่เห็นแคมเปญ 123 ได้ และระบบจะเพิ่มสัญญาณรบกวนเพื่อปกป้องความเป็นส่วนตัวของผู้ใช้
ดูข้อมูลเพิ่มเติมเกี่ยวกับ API ได้จากบทความการรวมข้อมูลส่วนตัว
การรวมสัญญาณการประมูล
คุณสามารถรวบรวมสัญญาณที่มีอยู่ในชิ้นงานไปยังเซิร์ฟเวอร์ได้โดยใช้การรวมข้อมูลส่วนตัว สําหรับการรวมสัญญาณ คุณสามารถใช้วิธีการ privateAggregation.contributeToHistogram()
ที่มีอยู่ในเวิร์กเลตการเสนอราคาของผู้ซื้อ เวิร์กเลตการให้คะแนนผู้ขาย และเวิร์กเลตการรายงานผู้ซื้อ/ผู้ขาย
ในตัวอย่างนี้ ระบบจะรวบรวมราคาเสนอที่ชนะไว้ในที่เก็บของเจ้าของกลุ่มความสนใจ
function convertBuyerToBucket(igOwner) {}
function convertWinningBidToValue(winningBid) {}
function reportResult(auctionConfig, browserSignals) {
privateAggregation.contributeToHistogram({
bucket: convertBuyerToBucket(browserSignals.interestGroupOwner),
value: convertWinningBidToValue(browserSignals.bid)
});
}
นี่เป็นกลไกทั่วไปที่จะใช้เมื่อสัญญาณที่คุณต้องการรวบรวมไม่ได้เชื่อมโยงกับข้อมูลระดับเหตุการณ์และไม่ได้ทริกเกอร์โดยเหตุการณ์นอกการประมูล ดูข้อมูลเพิ่มเติมเกี่ยวกับการรายงานสัญญาณการประมูลได้ที่คําอธิบาย
การรวบรวมสัญญาณการประมูลกับข้อมูลเหตุการณ์
คุณสามารถรวบรวมสัญญาณการประมูลที่มีข้อมูลจํากัดเกี่ยวกับเหตุการณ์ที่เกิดขึ้นในเฟรมโฆษณา เช่น คุณสามารถวัดจํานวนคลิกที่โฆษณาของแคมเปญได้รับแบบรวมได้โดยใช้การสร้างที่เก็บข้อมูลซึ่งแสดงแคมเปญและเหตุการณ์คลิกนั้น โปรดทราบว่าจากเฟรมโฆษณา คุณสามารถระบุเหตุการณ์ที่เกิดขึ้นได้ แต่จะแนบเพย์โหลดระดับเหตุการณ์ไม่ได้
หากต้องการรวบรวมสัญญาณการประมูลตามเหตุการณ์ ให้ใช้ privateAggregation.contributeToHistogramOnEvent(eventType, contribution)
ซึ่งรับสตริงที่ระบุประเภทเหตุการณ์และการมีส่วนร่วมที่จะรายงานเมื่อมีการทริกเกอร์เหตุการณ์นั้น คุณสามารถเรียกใช้เมธอดที่มีประเภทเหตุการณ์ที่กําหนดเอง จากนั้นเรียก window.fence.reportEvent(eventType)
จากเฟรมโฆษณาเพื่อทริกเกอร์การส่งรายงาน
สมมติว่าคุณต้องการวัดจํานวนคลิกที่โฆษณาของแคมเปญได้รับ
// 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
});
}
ในฟังก์ชันการสร้างราคาเสนอ คุณสามารถกําหนดกลุ่มเป็นชุดค่าผสมของรหัสแคมเปญและเหตุการณ์การคลิก จากนั้นเพิ่มค่าของกลุ่มนั้นขึ้น 1 ทุกครั้งที่ทริกเกอร์เหตุการณ์
// Ad frame
window.fence.reportEvent('click');
จากนั้นในภายหลัง คุณสามารถเรียกใช้การส่งรายงานจากเฟรมโฆษณาได้โดยเรียกใช้ reportEvent(eventType)
ดังนี้
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเรียกให้ใช้การมีส่วนร่วมในการรวบรวมข้อมูลส่วนตัวจากเฟรมได้จากคําอธิบาย
การรายงานผลลัพธ์และประสิทธิภาพการประมูล
นอกจากนี้ คุณยังรวบรวมผลลัพธ์การประมูลได้เมื่อทริกเกอร์โดยเหตุการณ์การชนะหรือการแพ้การประมูลด้วย contributeToHistogramOnEvent(eventType, contribution)
เมื่อส่งคีย์เวิร์ดประเภทเหตุการณ์ที่สงวนไว้ (reserved.win, reserved.loss
และ reserved.always
)
การรวมข้อมูลส่วนตัวจะแสดงรายการค่าฐานที่คุณใช้คํานวณที่เก็บข้อมูลและมูลค่าของการมีส่วนร่วมได้ ค่าฐานที่ใช้ได้สําหรับผลการประมูลคือมูลค่าราคาเสนอของโฆษณาที่ชนะ มูลค่าราคาเสนอที่ได้รับคะแนนสูงสุดเป็นอันดับ 2 และเหตุผลที่ราคาเสนอถูกปฏิเสธจากการประมูล
เมื่อระบุค่าฐานบางอย่าง เช่น จํานวนราคาเสนอที่ชนะ คุณสามารถกําหนดจํานวนที่จะเพิ่มหรือลบออกจากค่านั้น แล้วรายงานค่าสุดท้าย เช่น หากระบุราคาเสนอที่ชนะเป็นมูลค่าฐาน 150 บาท คุณสามารถลบราคาเสนอ 60 บาทเพื่อคำนวณมูลค่าจริง 90 บาทของจำนวนเงินที่เสียไปในการประมูล
การรายงานผลลัพธ์ของการประมูล
มาดูตัวอย่างที่คุณแพ้การประมูลและต้องการทราบว่าราคาเสนอของคุณห่างจากราคาเคลียร์ในการประมูลมากน้อยเพียงใด
หากต้องการดูจำนวนเงินที่แพ้การประมูล ให้ลบราคาเสนอของคุณออกจากราคาเสนอที่ชนะ
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
}
});
}
เมื่อส่งรายงานแล้ว ค่าที่รายงานจริงจะเป็น baseValue
ที่ปรับขนาดแล้วโดยเลื่อนตามค่า offset
ดูข้อมูลเพิ่มเติมได้ที่คำอธิบาย
การรายงานประสิทธิภาพ
ผู้ซื้อและผู้ขายสามารถรายงานระยะเวลาที่ใช้ในการเรียกใช้สคริปต์ และระยะเวลาที่ใช้ในการดึงข้อมูลสัญญาณที่เชื่อถือได้ ผู้ขายสามารถรวบรวมเวลาสร้างราคาเสนอและเวลาสัญญาณการเสนอราคาที่เชื่อถือได้ของผู้ซื้อแต่ละรายได้เมื่อได้รับอนุญาต
ดูข้อมูลเพิ่มเติมได้ในคำอธิบาย
การจัดเก็บสัญญาณการประมูลในพื้นที่เก็บข้อมูลที่ใช้ร่วมกัน
พื้นที่เก็บข้อมูลที่ใช้ร่วมกันคือพื้นที่เก็บข้อมูลแบบไม่แบ่งพาร์ติชันและข้ามแหล่งที่มาซึ่งคุณสามารถเขียนได้อย่างอิสระ แต่มีการป้องกันด้วยเกตเมื่ออ่านและประมวลผลค่าที่จัดเก็บไว้ หนึ่งในเกตที่ใช้ได้สำหรับ Shared Storage API คือการรวมข้อมูลส่วนตัว คุณจะอ่านค่าในที่เก็บข้อมูลที่ใช้ร่วมกันได้จากภายในเวิร์กเลตเท่านั้น และรายงานค่าเหล่านั้นได้โดยใช้การรวมข้อมูลส่วนตัวจากเวิร์กเลต
นอกจากนี้ คุณยังเขียนลงในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันจากเวิร์กเลตการเสนอราคา การให้คะแนน และการรายงานของ Protected Audience API ได้ด้วย ในอนาคต คุณสามารถรายงานค่าเหล่านั้นในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันไปยังเซิร์ฟเวอร์ได้โดยใช้การรวมข้อมูลส่วนตัว นอกจากนี้ คุณยังใช้ค่าที่เก็บไว้สําหรับการดำเนินการการเลือก URL ได้ด้วย
จากชิ้นงาน Protected Audience API คุณสามารถเขียนคีย์และค่าลงในพื้นที่เก็บข้อมูลที่ใช้ร่วมกันได้ ดังนี้
// Protected Audience API worklet
function generateBid() {
sharedStorage.set('test-bucket', 123);
}
ภายหลัง คุณสามารถโหลดเวิร์กเลตพื้นที่เก็บข้อมูลที่ใช้ร่วมกันเพื่ออ่านและส่งค่าดังกล่าวออกด้วยการรวมข้อมูลส่วนตัวได้โดยทำดังนี้
// 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);
ดูข้อมูลเพิ่มเติมเกี่ยวกับพื้นที่เก็บข้อมูลที่ใช้ร่วมกันได้ที่ส่วนพื้นที่เก็บข้อมูลที่ใช้ร่วมกันของคู่มือนักพัฒนาซอฟต์แวร์การรายงาน Protected Audience API, คำอธิบาย, การสาธิตเวอร์ชันที่ใช้จริง และโค้ดสาธิตใน GitHub
ขั้นตอนถัดไปคือ
เราต้องการพูดคุยกับคุณเพื่อให้แน่ใจว่าเราได้สร้าง API ที่เหมาะสำหรับทุกคน
พูดคุยเกี่ยวกับ API
API นี้จะได้รับการจัดทำเอกสารและอภิปรายต่อสาธารณะเช่นเดียวกับ Privacy Sandbox API อื่นๆ
ทดลองใช้ API
คุณจะทดสอบและเข้าร่วมในการพูดคุยเกี่ยวกับ Protected Audience API ได้