Menerapkan transaksi, yang juga dikenal sebagai Marketplace Pribadi (PMP), dalam lelang Protected Audience
Ringkasan
Transaksi, yang juga disebut sebagai Marketplace Pribadi (PMP), menawarkan akses yang dikurasi atau harga pilihan untuk pembeli pada sebagian inventaris. Untuk memfasilitasi transaksi terprogram, ID tempat duduk dan ID transaksi digunakan:
- ID tempat duduk berasal dari pembeli, dan merupakan ID yang mewakili pelanggan pembeli. ID slot dapat memiliki implikasi penagihan, misalnya, jika slot memiliki diskon dengan penjual tertentu.
- ID transaksi berasal dari pembeli atau penjual, dan merupakan ID yang mewakili perjanjian antara pembeli dan penjual. ID transaksi dapat memiliki properti seperti biaya/harga, komitmen volume, informasi audiens, eksklusivitas, dan lainnya.
Protected Audience memfasilitasi transaksi dengan menggunakan ID pelaporan yang memungkinkan ID kursi dan transaksi tersedia untuk bidding lelang, pemberian skor, dan pelaporan. ID pelaporan memberikan mekanisme bagi perusahaan teknologi iklan untuk menerima ID transaksi dan slot ini dalam pelaporan Protected Audience pasca-lelang untuk melakukan transaksi kesepakatan dan mengatur upaya penagihan. Kami berharap pembeli, penjual, agensi, dan pengiklan memiliki strategi khusus untuk menafsirkan dan memahami ID transaksi dan tempat yang mereka terima.
Panduan
Langkah-langkah untuk memfasilitasi transaksi dalam lelang Protected Audience adalah sebagai berikut:
- Pembeli mendaftarkan ID transaksi dan kursi dalam konfigurasi grup minat sebelum lelang berjalan
- ID penawaran dan kursi dapat ditetapkan di kolom ID pelaporan yang dapat dipilih (
selectableBuyerAndSellerReportingIds). - Jika ID tempat iklan sama untuk semua transaksi, ID tempat iklan tersebut dapat ditetapkan di
buyerAndSellerReportingId, dan ID transaksi dapat ditetapkan di kolom ID pelaporan yang dapat dipilih (selectableBuyerAndSellerReportingIds).
- ID penawaran dan kursi dapat ditetapkan di kolom ID pelaporan yang dapat dipilih (
- Selama pembuatan bid, ID transaksi dan ID tempat akan tersedia. Pembeli memilih ID transaksi dari
selectableBuyerAndSellerReportingIds. Pembeli membuat bid yang menyertakan ID transaksi yang terkait dengan bid tersebut dengan menampilkanselectedBuyerAndSellerReportingId. Bid hanya dapat memenangkan lelang jika ID transaksi yang ditampilkan bersifat k-anonim bersama dengan ID pelaporan lainnya dan properti tertentu dari grup minat. - Selama pemberian skor iklan, ID kursi dan transaksi yang dipilih akan tersedia untuk penjual.
- ID transaksi dan kursi akan tersedia di fungsi pelaporan penjual.
- ID penawaran dan kursi akan tersedia di fungsi pelaporan pembeli.
1. Pendaftaran ID transaksi dan slot
Pembeli mendaftarkan ID kursi dan transaksi dalam konfigurasi grup minat sebelum lelang berjalan. ID transaksi dan slot ditetapkan di selectableBuyerAndSellerReportingIds sebagai array string. Jika ID tempat duduk sama untuk semua penawaran, dan tidak perlu diulang, ID tempat duduk dapat ditambahkan di kolom buyerAndSellerReportingId yang menerima string:
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);
Jika ID tempat duduk berbeda untuk penawaran, penyiapan berikut dapat digunakan:
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. ID transaksi dan slot untuk pembeli selama pembuatan bid
Selama pembuatan bid, pembeli memutuskan apakah mereka ingin mengajukan bid pada ID transaksi. Di generateBid(), pembeli dapat memilih ID transaksi dari selectableBuyerAndSellerReportingIds, dan menampilkan nilai sebagai selectedBuyerAndSellerReportingId. Bid ditolak jika ID transaksi yang dipilih tidak ada dalam array 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
};
}
Bid dengan nilai yang ditampilkan untuk selectedbuyerAndSellerReportingId hanya dapat memenangkan lelang jika nilai selectedbuyerAndSellerReportingId bersama-sama k-anonim dengan buyerAndSellerReportingId (jika ada), buyerReportingId (jika ada) pemilik grup minat, URL skrip bidding, URL rendering, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya Kuartal 1 2025).
Meskipun selectablebuyerAndSellerReportingIds ditentukan dalam konfigurasi grup minat, generateBid() tetap valid untuk menampilkan bid yang tidak menyertakan selectedbuyerAndSellerReportingId; dalam hal ini, ID pelaporan yang diberikan ke fungsi pelaporan jika bid ini menang akan mengikuti perilaku ID pelaporan yang tidak dapat dipilih.
Jika generateBid() dijalankan ulang karena pemanggilan awal tidak menghasilkan bid dengan iklan yang lulus pemeriksaan k-anonimitas, maka selectableBuyerAndSellerReportingIds yang tidak lulus pemeriksaan k-anonimitas tidak akan ada di grup minat saat dijalankan ulang.
3. ID transaksi dan slot untuk penjual selama pemberian skor iklan
ID transaksi yang dipilih, beserta ID slot jika ada, dapat diakses oleh scoreAd(). Penjual memberikan skor keinginan bid yang menang dengan mempertimbangkan ID transaksi dan persyaratan khusus. Jika penjual tidak menganggap ID transaksi yang dipilih pembeli berlaku, penjual akan menolak bid dengan memberikan skor keinginan nol atau negatif.
function scoreAd(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds, // 'deal456'
} = browserSignals;
// ...
}
4. ID transaksi dan slot untuk pelaporan penjual
Ingatlah bahwa bid hanya dapat memenangkan lelang jika selectedBuyerAndSellerReportingId, buyerAndSellerReportingId (jika ada), dan buyerReportingId (jika ada) bersifat k-anonim dengan pemilik grup minat, URL skrip bidding, URL rendering, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya Kuartal 1 2025). Dengan demikian, nilai ID pelaporan yang menyertakan selectedBuyerAndSellerReportingId akan selalu tersedia di dalam reportResult(). Perhatikan bahwa meskipun buyerReportingId diperiksa untuk k-anonimitas, nilai hanya tersedia untuk fungsi pelaporan pembeli, dan bukan fungsi pelaporan penjual di sini.
function reportResult(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds // 'deal456'
} = browserSignals;
// ...
}
5. ID transaksi dan slot untuk pelaporan pembeli
Konsep yang sama dari pelaporan penjual berlaku untuk pelaporan pembeli. Ingatlah bahwa bid hanya dapat memenangkan lelang jika selectedBuyerAndSellerReportingId, buyerAndSellerReportingId (jika ada), dan buyerReportingId (jika ada) bersifat k-anonim dengan pemilik grup minat, URL skrip bidding, URL rendering, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya Kuartal 1 2025). Dengan demikian, nilai ID pelaporan yang menyertakan selectedBuyerAndSellerReportingId akan selalu tersedia di dalam reportWin().
function reportWin(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingId // 'deal456'
buyerReportingId // 'brid123' - Not used for deals, but the value is available
} = browserSignals;
}
Berinteraksi dan memberikan masukan
- Untuk mempelajari ID pelaporan lebih lanjut, lihat bagian ID Pelaporan dalam penjelasan Protected Audience.
- GitHub: Ajukan pertanyaan dan ikuti diskusi dalam masalah di repositori API.
- W3C: Diskusikan kasus penggunaan industri dalam panggilan WICG.
- Pengumuman: Bergabung atau melihat daftar milis.
- Dukungan developer Privacy Sandbox: Ajukan pertanyaan dan bergabunglah dalam diskusi di repositori Dukungan Developer Privacy Sandbox.
- Chromium: Laporkan bug Chromium untuk mengajukan pertanyaan tentang penerapan yang tersedia untuk diuji di Chrome.