Protected Audience API reklam açık artırması için Satıcı API kılavuzu ve referanslar.
Bu makalede, deneysel Protected Audience API'nin mevcut iterasyonunda kullanılan reklam açık artırması için teknik bir referans bulabilirsiniz.
Protected Audience API'nin tüm yaşam döngüsü için geliştirici kılavuzunu okuyun ve satıcıların cihaz üzerinde açık artırma çalıştırması hakkında ayrıntılı bir tartışma için Protected Audience API açıklamalı kılavuzuna bakın.
Geliştirici değil misiniz? Protected Audience API'ye genel bakış başlıklı makaleyi inceleyin.
Protected Audience API reklam açık artırması nedir?
Protected Audience API reklam açık artırması, tarayıcının reklam seçmek için kullanıcının cihazında çalıştırdığı küçük JavaScript programlarından oluşan bir koleksiyondur. Gizliliği korumak için satıcıdan ve alıcılardan gelen tüm reklam açık artırması kodu, dış dünyayla iletişim kuramayan izole JavaScript worklet'lerinde çalıştırılır.

- Bir kullanıcı reklam gösteren bir siteyi ziyaret eder.
- Satıcının kodu
navigator.runAdAuction()
'ü yürütür. Bu, hangi reklam alanının satışta olduğunu ve kimlerin teklif verebileceğini belirtir. Satıcılar, her teklife puan veren bir komut dosyası (scoreAd()
) da eklemelidir. - Davet edilen alıcının kodu, teklif, alakalı bir reklam öğesi için URL ve diğer verileri oluşturmak üzere yürütülür. Teklif verme komut dosyası, alıcının anahtar/değer hizmetinden kalan reklam kampanyası bütçesi gibi gerçek zamanlı verileri sorgulayabilir.
- Satıcının kodu her teklife puan verir ve bir kazanan seçer. Bu mantık, teklif değerini ve teklifin arzu edilirliğini döndüren diğer verileri kullanır. Bağlama dayalı kazananı geçemeyen reklamlar reddedilir. Satıcı, gerçek zamanlı veriler için kendi anahtar/değer hizmetini kullanabilir.
- Kazanan reklam, çitli çerçeve içinde gösterilen opak bir değer olarak döndürülür. Hem satıcı hem de yayıncı bu değeri görüntüleyemez.
- Açık artırma, satıcıya ve kazanan alıcılara bildirilir.
Açık artırma ne zaman gerçekleşir?
Protected Audience API tek başına veya programatik açık artırmalarla çalıştırılabilir. Birden çok satıcının yer aldığı programatik açık artırmada:
- Kullanıcı, katılımcı bir siteyi ziyaret eder.
- Programatik açık artırma, mevcut bir reklam alanı için içeriğe dayalı bir reklam bulmak üzere başka bir satıcı tarafından yürütülür.
- Protected Audience API açık artırması çalıştırılır.
scoreAd()
, alıcının tekliflerini ilk açık artırmanın sonuçlarıyla karşılaştırır.
Bağlamsal kazananı geçemeyen teklifler reddedilir.
Protected Audience API reklam açık artırmasını kim yönetir?
Reklam alanı satmak için açık artırma düzenleyebilecek birden fazla taraf vardır.
Örneğin:
- İçerik yayıncısı: Web sitesinde reklam içeriği barındırmak için kendi adına hareket eden.
- Arz tarafı platformu (STP): Yayıncıyla birlikte çalışır ve diğer hizmetleri sağlar.
- Üçüncü taraf komut dosyası: Reklam açık artırmalarına katılımı sağlamak için yayıncı adına hareket eder.
Protected Audience API ile satıcının üç görevi vardır:
- Yayıncı kurallarını uygulayın: Hangi alıcılar ve hangi teklifler uygundur?
- Açık artırma mantığını çalıştırma: Her teklif için bir arzu edilirlik puanı hesaplamak üzere worklet'lerde çalıştırılan JavaScript.
- Açık artırma sonucunu bildirin.
Bu işler, navigator.runAdAuction()
JavaScript işlevini çağırarak reklam açık artırması başlattığında satıcı tarafından sağlanan kodda programatik olarak yapılır.
API işlevleri
runAdAuction()
Satıcı, navigator.runAdAuction()
çağrısı yaparak kullanıcının tarayıcısından reklam açık artırması başlatmasını ister.
Örneğin:
const auctionConfig = {
seller: 'https://ssp.example',
decisionLogicUrl: ...,
trustedScoringSignalsUrl: ...,
interestGroupBuyers: ['https://dsp.example', 'https://buyer2.example', ...],
auctionSignals: {...},
sellerSignals: {...},
sellerTimeout: 100,
perBuyerSignals: {
'https://dsp.example': {...},
'https://another-buyer.example': {...},
...
},
perBuyerTimeouts: {
'https://dsp.example': 50,
'https://another-buyer.example': 200,
'*': 150,
...
},
componentAuctions: [
{
'seller': 'https://some-other-ssp.example',
'decisionLogicUrl': ...,
...
},
...
]
};
try {
const auctionResultPromise = navigator.runAdAuction(auctionConfig);
} catch (error) {
// Handle error.
}
runAdAuction()
, reklam açık artırması sonucunu temsil eden bir URN'ye (urn:uuid:<something>
) çözüm bulan bir promise döndürür. Bu, yalnızca tarayıcı tarafından oluşturulmak üzere bir çitli çerçeveye aktarıldığında kodu çözülebilir: Yayıncı sayfası, kazanan reklamı denetleyebilir.
decisionLogicUrl
komut dosyası, her bir reklamı ilişkili teklifi ve meta verileriyle birlikte tek tek inceler ve ardından reklama sayısal bir arzu puanı atar.
auctionConfig
tesis
seller
- Zorunlu
- Örnek:
'https://ssp.example'
- Rolü: Satıcının kaynağı.
decisionLogicUrl
- Zorunlu
- Örnek:
'https://ssp.example/auction-decision-logic.js'
- Rolü: Açık artırma işleyici JavaScript'i için URL.
trustedScoringSignalsUrl
- İsteğe bağlı
- Örnek:
'https://ssp.example/scoring-signals'
- Rolü: Satıcının güvenilir sunucusunun URL'si.
interestGroupBuyers
- Zorunlu
- Örnek:
['https://dsp.example', 'https://buyer2.example', ...]
- Roll: Açık artırmada teklif vermesi istenen tüm ilgi alanı grubu sahiplerinin kökenleri.
- Notlar: Satıcı, tüm ilgi alanı gruplarının teklif vermesine izin vermek için
interestGroupBuyers:
değerini belirtebilir. Ardından reklamlar, ilgi alanı grubu sahibinin dahil edilmesi dışındaki ölçütlere göre kabul edilir veya reddedilir. Örneğin, satıcı, politikalarına uygunluğu onaylamak için reklam öğelerini inceleyebilir. auctionSignals
- İsteğe bağlı
- Örnek:
{...}
- Roll: Sayfa bağlamı, açık artırma türü vb.hakkında satıcı bilgileri
sellerSignals
- İsteğe bağlı
- Örnek:
{...}
- Roll: Yayıncı ayarlarına dayalı bilgiler, bağlama dayalı reklam isteği gönderme vb.
sellerTimeout
- İsteğe bağlı
- Örnek:
100
- Rolü: Satıcının
scoreAd()
komut dosyasının maksimum çalışma süresi (ms). perBuyerSignals
- İsteğe bağlı
- Örnek:
{'https://dsp.example': {...}, 'https://another-buyer.example': {...}, ... }
- Rolü: Belirli bir alıcıya ait sayfayla ilgili içerik sinyalleri (alıcı sunucusundan).
perBuyerTimeouts
- İsteğe bağlı
- Örnek:
50
- Roll: Belirli bir alıcının
generateBid()
komut dosyalarının maksimum çalışma süresi (milisaniye). componentAuctions
- İsteğe bağlı
- Örnek:
[{'seller': 'https://www.some-other-ssp.com', 'decisionLogicUrl': ..., ...}, ...]
- Rolü: Bileşen açık artırmaları için ek yapılandırmalar.
decisionLogicUrl
decisionLogicUrl
, açık artırma yapılandırma nesnesinin bir özelliğidir ve runAdAuction()
'a iletilir. Bu URL, scoreAd()
işlevi için bir komut dosyası içermelidir. Bu mantık, arzu edilirliğini belirlemek için her reklam için bir kez çalıştırılır.
scoreAd(adMetadata, bid, auctionConfig, trustedScoringSignals, browserSignals) {
...
return desirabilityScoreForThisAd;
}
browserSignals
browserSignals
, tarayıcının bildiği ve satıcının açık artırma komut dosyasının doğrulamak isteyebileceği bilgileri içeren, tarayıcı tarafından oluşturulan bir nesnedir:
{
topWindowHostname: 'publisher.example',
interestGroupOwner: 'https://dsp.example',
renderUrl: 'https://cdn.example/render',
adComponents: ['https://cdn.com/ad-component-1', ...],
biddingDurationMsec: 12,
dataVersion: 1 /* DValue from the seller's Key/Value service response. */
}
Açık artırma başlamadan önce satıcı, kullanılabilir reklam alanı için en iyi içeriğe dayalı reklamı bulur. scoreAd()
mantığının bir kısmı, bağlamsal kazananı geçemeyen tüm reklamları reddeder.
scoreAd()
scoreAd()
aşağıdaki bağımsız değişkenleri alır:
Bağımsız Değişken | Rol |
---|---|
adMetadata |
Alıcı tarafından sağlanan keyfi meta veriler. |
auctionConfig |
Açık artırma yapılandırması nesnesi navigator.runAdAuction() 'e iletildi. |
bid |
Sayısal bir teklif değeri. |
trustedScoringSignals |
Açık artırma sırasında satıcının güvenilir sunucusundan alınan ve satıcının reklamla ilgili görüşünü temsil eden değerler. |
Sık sorulan sorular
Açık artırmanın kazananı nasıl belirlenir ve kim tarafından seçilir?
Satıcı, her reklamın arzu edilirlik puanını belirlemek için puanlama mantığını sağlar ve tarayıcı, en yüksek puanı alan reklamı kazanan reklam olarak seçer.
Satıcı, scoreAd()
işlevine mantık ekler ve tarayıcı, işlevi kendi dışındaki kodla sınırlı iletişime sahip bir iş parçasında yürütür. Tarayıcının kendisi reklamları puanlamaz. Puanlama mantığını yürütmekten ve en yüksek puana sahip teklifi seçmekten yalnızca tarayıcı sorumludur.
Tüm Protected Audience API referansları
API referans kılavuzları mevcuttur:
- Protected Audience API için geliştirici kılavuzu.
- Korunan Kitle ilgi alanı grupları ve teklif oluşturma ile ilgili reklam alıcı rehberi.
- Korunan Kitle reklam açık artırmaları ile ilgili reklam satıcısı kılavuzu.
- Açık artırma sonuçlarını raporlama kılavuzu
- Korunan Kitle için en iyi uygulamalar reklam açık artırması gecikmesi
- Korunan Kitle ile ilgili sorunları giderme
Protected Audience API açıklayıcısı da özellik desteği ve kısıtlamalar hakkında ayrıntılı bilgi sağlar.