Protected Audience açık artırmasında Özel Pazar Yeri (PMP) olarak da bilinen anlaşmaları uygulama
Genel Bakış
Özel Pazar Yeri (PMP) olarak da bilinen anlaşmalar, bir envanter alt kümesinde alıcılar için özel erişim veya tercih edilen fiyatlandırma sunar. Programatik anlaşmaları kolaylaştırmak için lisans kimlikleri ve anlaşma kimlikleri kullanılır:
- Koltuk kimliğinin kaynağı alıcıdır ve alıcının müşterisini temsil eden bir tanımlayıcıdır. Koltuk kimliği, faturalandırmayla ilgili sonuçlara yol açabilir (ör. koltuk belirli bir satıcıyla indirimliyse).
- Anlaşma kimliği alıcı veya satıcıdan gelir ve alıcı ile satıcı arasındaki sözleşmeyi temsil eden bir tanımlayıcıdır. Anlaşma kimliği; maliyet/fiyat, hacim taahhüdü, kitle bilgileri, ayrıcalık gibi özelliklere sahip olabilir.
Protected Audience, lisans ve anlaşma kimliklerinin açık artırma teklifi, puanlama ve raporlama için kullanılmasına olanak tanıyan raporlama kimliklerini kullanarak anlaşmaları kolaylaştırır. Raporlama kimlikleri, reklam teknolojisi şirketlerinin anlaşmaları işlemek ve faturalandırma çalışmalarını düzenlemek için açık artırma sonrası Protected Audience raporlarında bu anlaşma ve kol kimliklerini almaları için bir mekanizma sağlar. Alıcıların, satıcıların, ajansların ve reklamverenlerin, aldıkları anlaşma ve kol kimliklerini yorumlamak ve anlamak için özel stratejilere sahip olabileceğini umuyoruz.
Adım adım açıklamalı kılavuz
Protected Audience açık artırmasında anlaşmaları kolaylaştırma adımları aşağıdaki gibidir:
- Alıcı, açık artırma başlamadan önce anlaşmayı ve koltuk kimliklerini ilgi alanı grubu yapılandırmasına kaydeder
- Anlaşma ve lisans kimlikleri, seçilebilir raporlama kimlikleri alanında (
selectableBuyerAndSellerReportingIds
) ayarlanabilir. - Lisans kimliği tüm anlaşmalar için aynıysa bu lisans kimliği
buyerAndSellerReportingId
içinde ayarlanabilir ve anlaşma kimlikleri seçilebilir raporlama kimlikleri alanında (selectableBuyerAndSellerReportingIds
) ayarlanabilir.
- Anlaşma ve lisans kimlikleri, seçilebilir raporlama kimlikleri alanında (
- Teklif oluşturma sırasında anlaşma ve lisans kimlikleri kullanılabilir hale gelir. Alıcı,
selectableBuyerAndSellerReportingIds
üzerinden bir anlaşma kimliği seçer. Alıcı,selectedBuyerAndSellerReportingId
döndürerek bu teklifle ilişkili bir anlaşma kimliği içeren bir teklif oluşturur. Bir teklifin açık artırmayı kazanabilmesi için döndürülen anlaşma kimliği, diğer raporlama kimlikleri ve ilgi alanı grubunun belirli mülkleriyle birlikte k-anonim olması gerekir. - Reklam puanlaması sırasında, seçilen anlaşma ve lisans kimlikleri satıcının kullanımına açılır.
- Anlaşma ve koltuk kimlikleri, satıcının raporlama işlevlerinde kullanılabilir hale gelir.
- Anlaşma ve koltuk kimlikleri, alıcının raporlama işlevlerinde kullanılabilir hale gelir.
1. Fırsat ve lisans kimliği kaydı
Alıcı, açık artırma başlamadan önce anlaşma ve lisans kimliklerini ilgi alanı grubu yapılandırmasına kaydeder. Anlaşma ve lisans kimlikleri selectableBuyerAndSellerReportingIds
içinde bir dize dizisi olarak ayarlanır. Lisans kimliği tüm anlaşmalar için aynıysa ve tekrarlanması gerekmiyorsa lisans kimliği bir dizeyi kabul eden buyerAndSellerReportingId
alanına eklenebilir:
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);
Anlaşmalar için lisans kimliği farklıysa aşağıdaki kurulum kullanılabilir:
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. Teklif oluşturma sırasında alıcılar için anlaşma ve lisans kimlikleri
Teklif oluşturma sırasında alıcı, bir anlaşma kimliği için teklif vermek isteyip istemediğine karar verir. generateBid()
ürününde alıcı, selectableBuyerAndSellerReportingIds
üzerinden bir anlaşma kimliği seçebilir ve değeri selectedBuyerAndSellerReportingId
olarak döndürebilir. Seçilen anlaşma kimliği selectableBuyerAndSellerReportingIds
dizisinde değilse teklif reddedilir.
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
için döndürülen bir değere sahip teklif, yalnızca selectedbuyerAndSellerReportingId
değeri buyerAndSellerReportingId
(varsa), buyerReportingId
(varsa) ilgi alanı grubu sahibi, teklif verme komut dosyası URL'si, oluşturma URL'si ve reklam boyutuyla birlikte ortak k-anonimse açık artırmayı kazanabilir (reklam boyutu en az 2025'in 1. çeyreğine kadar bu kontrolden hariç tutulur).
selectablebuyerAndSellerReportingIds
, ilgi alanı grubu yapılandırmasında tanımlanmış olsa bile generateBid()
için selectedbuyerAndSellerReportingId
içermeyen bir teklif döndürmesi yine de geçerlidir. Bu durumda, bu teklifin kazanması durumunda raporlama işlevlerine sağlanan raporlama kimlikleri, seçilemeyen raporlama kimliği davranışını izler.
İlk çağrı, k-anonimlik kontrollerini geçen reklamlar içeren teklifler oluşturmadığı için generateBid()
'ün yeniden çalıştırılması durumunda, k-anonimlik kontrolünü geçemeyen selectableBuyerAndSellerReportingIds
, yeniden çalıştırma sırasındaki ilgi alanı grubunda yer almaz.
3. Reklam puanlaması sırasında satıcılar için anlaşma ve lisans kimlikleri
Seçilen anlaşma kimliği ve varsa lisans kimliği scoreAd()
tarafından erişilebilir. Satıcı, anlaşma kimliğini ve tüm özel şartları göz önünde bulundurarak kazanan teklifin istenen puanını belirtir. Satıcı, alıcı tarafından seçilen anlaşma kimliğinin geçerli olduğunu düşünmüyorsa teklifi sıfır veya negatif bir talep edilebilirlik puanı vererek reddeder.
function scoreAd(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds, // 'deal456'
} = browserSignals;
// ...
}
4. Satıcı raporları için anlaşma ve lisans kimlikleri
Bir teklifin açık artırmayı kazanabilmesi için selectedBuyerAndSellerReportingId
, buyerAndSellerReportingId
(varsa) ve buyerReportingId
(varsa) ilgi alanı grubu sahibi, teklif komut dosyası URL'si, oluşturma URL'si ve reklam boyutu ile k-anonim olması gerekir (reklam boyutu en az 2025'in 1. çeyreğine kadar bu kontrole dahil edilmez). Bu nedenle, selectedBuyerAndSellerReportingId
içeren raporlama kimliği değerleri her zaman reportResult()
içinde kullanılabilir. buyerReportingId
, k-anonimlik açısından kontrol edilse bile değerin burada yalnızca alıcı raporlama işlevi tarafından kullanılabileceğini unutmayın.
function reportResult(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingIds // 'deal456'
} = browserSignals;
// ...
}
5. Alıcı raporlaması için anlaşma ve lisans kimlikleri
Satıcı raporlarında geçerli olan kavramlar alıcı raporlarında da geçerlidir. Bir teklifin açık artırmayı kazanabilmesinin yalnızca selectedBuyerAndSellerReportingId
, buyerAndSellerReportingId
(varsa) ve buyerReportingId
(varsa) ilgi alanı grubu sahibi, teklifli sistem komut dosyası URL'si, oluşturma URL'si ve reklam boyutuyla k-anonim olması gerektiğini unutmayın (reklam boyutu en az 2025'in 1. çeyreğine kadar bu kontrolden hariç tutulur). Bu nedenle, selectedBuyerAndSellerReportingId
içeren raporlama kimliği değerleri her zaman reportWin()
içinde kullanılabilir.
function reportWin(..., browserSignals, ...) {
const {
buyerAndSellerReportingId, // 'seat123'
selectedBuyerAndSellerReportingId // 'deal456'
buyerReportingId // 'brid123' - Not used for deals, but the value is available
} = browserSignals;
}
Etkileşimde bulunun ve geri bildirim paylaşın
- Raporlama kimlikleri hakkında daha fazla bilgi edinmek için Protected Audience açıklayıcısının Raporlama Kimliği bölümüne bakın.
- GitHub: API deposundaki sorular sorun ve sorunlarla ilgili tartışmaları takip edin.
- W3C: WICG görüşmesinde sektördeki kullanım alanlarını tartışın.
- Duyuru: Posta listesine katılın veya posta listesini görüntüleyin.
- Özel Korumalı Alan geliştirici desteği: Özel Korumalı Alan Geliştirici Desteği deposunda soru sorabilir ve tartışmalara katılabilirsiniz.
- Chromium: Chrome'da test edilebilecek uygulama hakkında sorular sormak için bir Chromium hatası bildirin.