ID pelaporan

Pelajari cara kerja ID pelaporan dalam lelang Protected Audience

Ringkasan

ID pelaporan adalah ID yang terkait dengan iklan yang tersedia untuk digunakan dalam membuat bid, menentukan bid, dan melaporkan. ID pelaporan disediakan oleh pembeli dalam konfigurasi grup minat, dan tersedia di generateBid(), scoreAd(), reportResult(), dan reportWin() dalam berbagai kondisi yang dibahas dalam panduan ini.

ID pelaporan memungkinkan Anda melaporkan ID untuk iklan, dan juga mengaktifkan kasus penggunaan seperti transaksi.

ID pelaporan tersedia untuk fungsi pembeli dan penjual Protected Audience
Ketersediaan ID pelaporan

Ada tiga ID pelaporan dari dua jenis:

  • ID pelaporan yang tidak dapat dipilih
    • buyerReportingId (string)
    • buyerAndSellerReportingId (string)
  • ID pelaporan yang dapat dipilih
    • selectableBuyerAndSellerReportingIds (array string)

ID pelaporan berperilaku berbeda bergantung pada apakah ID pelaporan yang dapat dipilih digunakan atau tidak. Jika hanya ID pelaporan yang tidak dapat dipilih yang digunakan, ID tersebut hanya akan tersedia di dalam fungsi pelaporan. Saat ID pelaporan yang dapat dipilih digunakan, beserta ID pelaporan yang tidak dapat dipilih jika diperlukan, semua ID yang ditentukan akan tersedia di dalam generateBid() dan scoreAd() juga.

ID pelaporan yang tidak dapat dipilih

ID pelaporan tersedia untuk fungsi pembeli dan penjual Protected Audience
Ketersediaan ID pelaporan yang dapat dipilih

buyerReportingId dan buyerAndSellerReportingId adalah ID pelaporan yang tidak dapat dipilih yang ditetapkan dalam konfigurasi grup minat yang tersedia di fungsi pelaporan pembeli dan penjual. Fungsi pelaporan pembeli dan penjual hanya akan berjalan untuk iklan pemenang dan fungsi tersebut akan menerima ID pelaporan yang ditentukan untuk iklan pemenang tersebut.

Jika digunakan tanpa ID pelaporan yang dapat dipilih, fungsi pelaporan pembeli akan menerima buyerReportingId atau buyerAndSellerReportingId bergantung pada perilaku penimpaan, dan fungsi pelaporan penjual menerima buyerAndSellerReportingId. Jika buyerReportingId atau buyerAndSellerReportingId tidak ditentukan dalam konfigurasi grup minat, fungsi reportWin() akan menerima nama grup minat (interestGroupName) dari bid pemenang.

ID yang tidak dapat dipilih tidak tersedia di dalam generateBid() dan scoreAd() jika tidak digunakan bersama dengan ID pelaporan yang dapat dipilih.

ID pelaporan di grup minat

ID pelaporan ditentukan oleh pembeli untuk setiap iklan dalam grup minat:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    // buyerAndSellerReportingId goes to the buyer and seller reporting functions
    buyerAndSellerReportingId: 'bsrid123',
    // buyerReportingId is defined here as an example, but
    // is not used due to the overwrite rules described later
    buyerReportingId: 'brid123',
  }]
});

Pelaporan penjual

Selama fase pelaporan penjual, nilai buyerAndSellerReportingId tersedia untuk reportResult():

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

Sebelum ID tersedia di dalam reportResult(), k-anonymity akan diperiksa dengan pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya K1 tahun 2025). Jika tidak k-anonim, fungsi reportResult() akan tetap berjalan, tetapi nilai ID pelaporan tidak akan tersedia di dalam fungsi.

Pelaporan pembeli

Selama fase pelaporan pembeli pada lelang, satu ID pelaporan akan tersedia untuk reportWin(). Jika lebih dari satu ID pelaporan ditentukan di grup minat, aturan penimpaan akan diterapkan dengan buyerAndSellerReportingId menimpa buyerReportingId:

  • Jika buyerAndSellerReportingId dan buyerReportingId ditentukan, buyerAndSellerReportingId akan menimpa buyerReportingId, dan buyerAndSellerReportingId akan tersedia di dalam reportWin().
  • Jika hanya buyerReportingId yang ditentukan, buyerReportingId akan tersedia.
  • Jika buyerAndSellerReportingId atau buyerReportingId tidak ditentukan, interestGroupName akan tersedia.
function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId // 'bsrid123'
  } = browserSignals;

  sendReportTo(`https://seller.example/report?bsrid=${buyerAndSellerReportingId}`);
}

ID pelaporan yang tersedia di dalam reportWin() akan diperiksa untuk mengetahui k-anonymity dengan pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya K1 tahun 2025). Jika gagal dalam pemeriksaan k-anonymity, reportWin() akan tetap berjalan, tetapi nilai ID pelaporan tidak akan tersedia di dalam fungsi.

Hanya buyerReportingId yang ditentukan

Jika hanya buyerReportingId yang ditentukan dalam konfigurasi grup minat:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
  }]
});

Kemudian, buyerReportingId tersedia di dalam reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
  } = browserSignals;
}

Sebelum tersedia untuk reportWin(), buyerReportingId akan diperiksa k-anonimitas-nya dengan pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya Kuartal 1 2025).

Hanya pembeliAndSellerReportingId yang ditentukan

Jika hanya buyerAndSellerReportingId yang ditentukan dalam konfigurasi grup minat:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

Kemudian, buyerAndSellerReportingId tersedia di dalam reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

Sebelum tersedia untuk reportWin(), buyerAndSellerReportingId diperiksa k-anonymitynya dengan pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya Kuartal 1 tahun 2025).

buyerAndSellerReportingId dan buyerReportingId ditentukan

Jika buyerAndSellerReportingId dan buyerReportingId ditentukan di konfigurasi grup minat:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
  }]
});

Berarti, hanya buyerAndSellerReportingId yang tersedia di dalam reportWin() karena perilaku timpa:

function reportWin(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
  } = browserSignals;
}

Sebelum tersedia untuk reportWin(), buyerAndSellerReportingId diperiksa k-anonymitynya dengan pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya Kuartal 1 tahun 2025).

buyerAndSellerReportingId atau buyerReportingId tidak ditentukan

Jika tidak ada ID pelaporan yang ditentukan dalam konfigurasi grup minat:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
  }]
});

Kemudian, grup minat name tersedia di dalam reportWin():

function reportWin(..., browserSignals, ...) {
  const {
    interestGroupName, // 'example-interest-group'
  } = browserSignals;
}

Sebelum tersedia untuk reportWin(), nama grup minat (interestGroupName) akan diperiksa untuk k-anonimitas dengan pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya Kuartal 1 2025).

ID pelaporan yang dapat dipilih

ID pelaporan tersedia untuk fungsi pembeli dan penjual Protected Audience
Ketersediaan ID pelaporan dengan ID pelaporan yang dapat dipilih

ID pelaporan yang dapat dipilih memungkinkan pembeli memilih ID selama pembuatan bid, dan browser menyediakan nilai yang dipilih untuk scoreAd() dan fungsi pelaporan. Nilai selectableBuyerAndSellerReportingIds, yang merupakan array string, diberikan ke generateBid(), dan pembeli dapat menampilkan satu ID yang dipilih sebagai selectedBuyerAndSellerReportingId.

Fungsi generateBid() dan scoreAd() akan berjalan untuk setiap iklan yang ditentukan dalam konfigurasi grup minat dan menerima ID pelaporan untuk setiap iklan. Fungsi pelaporan pembeli dan penjual hanya akan berjalan untuk iklan pemenang dan fungsi tersebut akan menerima ID pelaporan yang ditentukan untuk iklan pemenang tersebut.

Jika ID pelaporan yang tidak dapat dipilih digunakan bersama dengan ID pelaporan yang dapat dipilih, perilakunya akan berubah dari alur kerja yang dijelaskan di bagian sebelumnya. Tidak seperti perilaku awal ID pelaporan yang tidak dapat dipilih yang hanya tersedia di dalam fungsi pelaporan, ID pelaporan yang dapat dipilih memungkinkan ID pelaporan yang tidak dapat dipilih juga tersedia di dalam generateBid() dan scoreAd().

Grup minat

Kolom ID pelaporan yang dapat dipilih - selectableBuyerAndSellerReportingIds - adalah array string yang ditentukan oleh pembeli dalam grup minat untuk iklan. ID pelaporan yang tidak dapat dipilih juga dapat ditentukan bersama ID pelaporan yang dapat dipilih:

navigator.joinAdInterestGroup({
  owner: 'https://buyer.example',
  name: 'example-interest-group',
  ads: [{
    renderUrl: `https://buyer.example/ad.html`,
    buyerReportingId: 'brid123',
    buyerAndSellerReportingId: 'bsrid123',
    selectableBuyerAndSellerReportingIds: ['sbsrid1', 'sbsrid2', 'sbsrid3']
  }]
});

Pembuatan bid pembeli

Jika selectableBuyerAndSellerReportingIds ditentukan dalam konfigurasi grup minat, selectableBuyerAndSellerReportingIds akan tersedia di dalam generateBid() bersama dengan ID pelaporan lain yang telah ditentukan.

function generateBid(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectableBuyerAndSellerReportingIds // ['sbsrid1', 'sbsrid2', 'sbsrid3']
  } = browserSignals;

  return {
    bid: 1,
    render: 'https://buyer.example/ad.html',
    selectedBuyerAndSellerReportingId: 'sbsrid2' // Buyer returns the selected ID
  };
}

Pembeli dapat memilih salah satu ID dari array selectableBuyerAndSellerReportingIds di generateBid() dan menampilkan ID yang dipilih sebagai selectedBuyerAndSellerReportingId. Bid ditolak jika nilai yang dipilih tidak ada dalam array selectableBuyerAndSellerReportingIds. Jika selectableBuyerAndSellerReportingIds ditentukan dalam konfigurasi grup minat, dan pembeli tidak menampilkan selectedBuyerAndSellerReportingId dari generateBid(), ID pelaporan akan kembali ke perilaku yang dijelaskan untuk ID pelaporan yang tidak dapat dipilih.

Bid dengan nilai yang ditampilkan untuk selectedbuyerAndSellerReportingId hanya dapat memenangkan lelang jika nilai selectedbuyerAndSellerReportingId bersifat k-anonim bersama dengan buyerAndSellerReportingId (jika ada), buyerReportingId (jika ada), pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya K1 tahun 2025).

Skor iklan penjual

Untuk penjual, selectedBuyerAndSellerReportingId yang ditampilkan oleh pembeli dari generateBid() akan tersedia di scoreAd(), bersama dengan buyerAndSellerReportingId jika ditentukan di konfigurasi grup minat.

function scoreAd(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId, // 'sbsrid2'
  } = browserSignals;

  // ...
}

Pelaporan penjual

Untuk pelaporan penjual, selectedBuyerAndSellerReportingId yang dikembalikan oleh pembeli dari generateBid() akan tersedia di reportResult(), bersama dengan buyerAndSellerReportingId, jika ditentukan di grup minat.

function reportResult(..., browserSignals, ...) {
  const {
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;
  
  // ...
}

Jika selectableBuyerAndSellerReportingIds ditentukan dalam konfigurasi grup minat, dan selectedBuyerAndSellerReportingId ditampilkan dari generateBid(), variabel tersebut tidak dapat memenangkan lelang kecuali jika selectedBuyerAndSellerReportingId dan buyerAndSellerReportingId (jika ada) bersifat k-anonim dengan pemilik grup minat, URL skrip bidding, URL render, dan ukuran iklan (ukuran iklan dikecualikan dari pemeriksaan ini hingga setidaknya K1 tahun 2025), dan reportResult() tidak akan dijalankan untuk bid tersebut. Oleh karena itu, jika reportResult() dipanggil dengan nilai untuk selectedBuyerAndSellerReportingId, artinya ID pelaporan lulus pemeriksaan k-anonymity, dan semua ID pelaporan yang ditentukan akan tersedia di dalam reportResult().

Pelaporan pembeli

Jika selectableBuyerAndSellerReportingIds ditentukan dalam konfigurasi grup minat, dan selectedBuyerAndSellerReportingId ditampilkan dari generateBid(), semua ID pelaporan yang ditentukan dalam konfigurasi grup minat akan tersedia. Perhatikan bahwa seperti halnya pelaporan penjual, jika ID pelaporan tidak bersifat k-anonim, ID pelaporan tidak dapat memenangkan lelang dan reportWin() tidak akan berjalan untuk bid tersebut.

function reportWin(..., browserSignals, ...) {
  const {
    buyerReportingId, // 'brid123'
    buyerAndSellerReportingId, // 'bsrid123'
    selectedBuyerAndSellerReportingId // 'sbsrid2'
  } = browserSignals;

  // ...
}

Timpa aturan

Di sini, kami meringkas aturan penimpaan untuk ID pelaporan yang tidak dapat dipilih dan ID pelaporan yang dapat dipilih. Manakah dari selectableBuyerAndSellerReportingIds, buyerAndSellerReportingId, buyerReportingId, dan nama grup minat yang diteruskan ke reportWin() yang ditentukan oleh browser dengan logika berikut:

  • Jika selectedBuyerAndSellerReportingId ditampilkan dari bid, selectedBuyerAndSellerReportingId, buyerAndSellerReportingId (jika ditentukan dalam grup minat), dan buyerReportingId (jika ditentukan dalam grup minat) semuanya tersedia untuk pelaporan.
  • Atau, jika buyerAndSellerReportingId ditentukan di grup minat, hanya buyerAndSellerReportingId yang tersedia untuk pelaporan.
  • Atau, jika buyerReportingId ditentukan di grup minat, hanya buyerReportingId yang tersedia untuk pelaporan.
  • Jika tidak, hanya grup minat name yang tersedia untuk pelaporan.

Tabel berikut menjelaskan perilaku penimpaan:

Apakah ID pelaporan ditentukan dalam konfigurasi grup minat? ID pelaporan tersedia
selectableBuyerAnd
SellerReportingIds
buyerAndSeller
ReportingId
buyerReportingId reportWin() reportResult()
Ya, dan dipilih
di generateBid()
Opsional Opsional 1) selectableBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(jika ditentukan)

3) buyerReportingId (jika ditentukan)
1) selectableBuyerAnd
SellerReportingIds


2) buyerAndSeller
ReportingId
(jika ditentukan)

Tidak, atau tidak dipilih
di generateBid()
Ya Diabaikan buyerAndSeller
ReportingId
buyerAndSeller
ReportingId
Tidak, atau tidak dipilih
di generateBid()
Tidak Ya buyerReportingId Tidak ada
Tidak, atau tidak dipilih
di generateBid()
Tidak Tidak interestGroupName Tidak ada

Berinteraksi dan memberikan masukan