Iklan SDK pembeli menggunakan materi iklan yang dirender oleh SDK Anda sendiri.
Inventaris aplikasi seluler dari penayang yang mengintegrasikan adaptor
bidding Anda ke dalam aplikasi mereka dapat menerima bid
dengan format iklan yang dirender SDK pembeli. Cara rendernya didasarkan pada
implementasi SDK dan SDKRenderedAd
yang Anda kirim dalam
respons bid.
Anda dapat mengajukan bid yang menyertakan iklan yang dirender SDK pembeli atau format iklan lain yang didukung oleh Google Mobile Ads SDK, tetapi bid apa pun yang berisi keduanya akan difilter.
Persyaratan
Iklan SDK pembeli tersedia untuk pembeli yang disetujui. Format ini memerlukan upaya tambahan dari Anda dan penayang. Hubungi Account Manager Teknis Anda untuk mengonfigurasi akun Anda untuk iklan SDK pembeli. Kemudian, Anda dapat menerapkan adaptor Bidding yang memungkinkan SDK Anda berkomunikasi dengan Google Mobile Ads SDK. Penayang harus mengintegrasikan SDK dan adaptor Anda ke dalam aplikasi selulernya.
Sebaiknya kirimkan materi iklan untuk peninjauan sebelum menyertakannya dalam respons bid. Hubungi Manajer Akun Teknis Anda jika Anda tidak mengetahui jenis materi iklan pada waktu bidding.
Jika permintaan bid mendukung format iklan ini, Anda dapat menentukan iklan yang dirender
dengan SDK dengan menetapkan kolom sdk_rendered_ad
di respons
bid.
Permintaan bid
Permintaan bid untuk inventaris aplikasi seluler menyertakan detail tentang SDK dan adaptor di aplikasi penayang yang dapat Anda gunakan untuk rendering di kolom berikut:
- ID SDK
Anda dapat menggunakan permintaan bid untuk menemukan ID SDK yang harus Anda berikan dalam respons bid dengan kolom
BidRequest.app.ext.installed_sdk.id
.Anda dapat mempelajari lebih lanjut hal ini di dokumentasi referensi
InstalledSdk
.- Pemetaan Unit Iklan
Anda dapat menggunakan permintaan bid untuk menemukan pemetaan unit iklan yang cocok dengan slot bid dengan kolom
BidRequest.imp.ext.ad_unit_mapping
.Anda dapat mempelajari lebih lanjut hal ini di dokumentasi referensi
AdUnitMapping
.- Sinyal Aman
Penayang dapat membagikan sinyal aman kepada bidder. Anda dapat menemukannya di
BidRequest.imp.ext.buyer_generated_request_data.data
.Anda dapat mempelajari lebih lanjut cara sinyal aman direpresentasikan dalam dokumentasi referensi
BuyerGeneratedRequestData
.- Permintaan Pengujian
Anda dapat menggunakan kolom
BidRequest.test
untuk memverifikasi apakah permintaan bid adalah pengujian.Anda dapat mempelajari lebih lanjut kolom ini di dokumentasi referensi
BidRequest
.
Contoh permintaan bid
id: "<bid_request_id>"
imp {
id: "1"
banner {
w: 320
h: 50
...
}
...
adx_ext {
...
ad_unit_mapping {
keyvals {
key: "key_1"
value: "value_1"
}
keyvals {
key: "key_2"
value: "value_2"
}
...
format: FORMAT_BANNER
}
}
}
app {
...
adx_ext {
installed_sdk {
id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
sdk_version {
major: 1
minor: 2
micro: 30
}
adapter_version {
major: 1
minor: 2
micro: 3000
}
}
installed_sdk {
...
}
...
}
}
device {
...
}
user {
...
}
adx_ext {
eids {
source: "com.google.ads.mediation.partner.PartnerMediationAdapter"
uids {
id: "<partner_signal_string>"
}
}
}
}
at: 1
tmax: 1000
cur: "USD"
test: 1
...
adx_ext {
google_query_id: "<query_string>"
...
}
Respons bid
Kolom berikut diperlukan dalam respons bid:
BidResponse.seatbid.bid.adomain
BidResponse.seatbid.bid.ext.billing_id
BidResponse.seatbid.bid.crid
BidResponse.seatbid.bid.w
BidResponse.seatbid.bid.h
Selain itu, respons bid Anda harus mengisi
BidResponse.seatbid.bid.ext.sdk_rendered_ad
dengan hal berikut:
- ID SDK
Gunakan kolom
id
untuk memberikan ID bagi SDK untuk merender iklan.Anda dapat menemukan ID di
BidRequest.app.ext.installed_sdk
.- Iklan yang dideklarasikan
Gunakan
BidResponse.seatbid.bid.ext.sdk_rendered_ad.declared_ad
untuk memberikan materi iklan yang memenuhi persyaratan yang ditemukan diBidRequest.imp.ext.creative_enforcement_settings
dan mewakili data rendering iklan. Hanya salah satu darihtml_snippet
,video_url
,video_vast_xml
, ataunative_response
yang harus diisi.Jika Anda tidak mengisi
declared_ad
, kami tidak dapat meninjau materi iklan dan semua bid dengan materi iklan akan difilter dari lelang.Anda dapat mempelajari iklan yang dideklarasikan lebih lanjut di dokumentasi referensi
DeclaredAd
.- Merender data
Gunakan kolom
BidResponse.seatbid.bid.ext.sdk_rendered_ad.rendering_data
untuk memberikan data yang akan digunakan SDK pembeli untuk merender iklan Anda.Bid untuk menempatkan iklan SDK pembeli harus menentukan materi iklan di kolom
declared_ad
. Iklan yang dideklarasikan harus merepresentasikanrendering_data
secara akurat.Berikut adalah contoh objek
SdkRenderedAd
:{ "id": "1234567", "rendering_data": "\xd58...,\xd4\x89\xd\xf9", "declared_ad": { "html_snippet": "<iframe src=\"https://example.com/ads?id=123& curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>", } }
Sebaiknya gunakan Real-time Bidding API untuk mengirim materi iklan untuk peninjauan sebelum Anda menyertakannya dalam respons bid.
Lihat
panduan OpenRTB untuk detail
selengkapnya tentang kolom SdkRenderedAd
.
Contoh respons bid
Berikut adalah contoh respons bid untuk setiap format iklan:
Banner
id: "<bid_request_id>"
seatbid {
bid {
id: "<bidder_generated_response_id>"
impid: "1"
price: 99
adomain: "https://play.google.com/store/apps/details?id=com.test.app"
cid: "<billing_id>"
crid: "<creative_id>"
w: 320
h: 50
burl: "https://abc.com/billing?td=fn&win_price=${AUCTION_PRICE}"
adx_ext {
sdk_rendered_ad {
id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
rendering_data: "<rendering_data_string>"
declared_ad {
click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
html_snippet: "<!doctype html> <html> ... </html>"
}
}
event_notification_token {
payload: "<payload_string>"
}
billing_id: 141763360450
}
}
}
bidid: "<bidder_generated_response_id>"
cur: "USD"
Interstisial
id: "<bid_request_id>"
seatbid {
bid {
id: "<bidder_generated_response_id>"
impid: "1"
price: 400
adomain: "https://play.google.com/store/apps/details?id=com.test.app"
cid: "<billing_id>"
crid: "<creative_id>"
w: 412
h: 775
adx_ext {
sdk_rendered_ad {
id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
rendering_data: "<rendering_data_string>"
declared_ad {
click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
video_vast_xml: "<VAST version=\"2.0\"><Ad>...</Ad></VAST>"
}
}
event_notification_token {
payload: "<payload_string>"
}
}
}
}
bidid: "<bidder_generated_response_id>"
cur: "USD"
Video reward
id: "<bid_request_id>"
seatbid {
bid {
id: "<bidder_generated_response_id>"
impid: "1"
price: 400
adomain: "https://play.google.com/store/apps/details?id=com.test.app"
cid: "<billing_id>"
crid: "<creative_id>"
w: 412
h: 775
adx_ext {
sdk_rendered_ad {
id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
rendering_data: "<rendering_data_string>"
declared_ad {
click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
video_vast_xml: "<VAST version=\"2.0\"><Ad>...</Ad></VAST>"
}
}
event_notification_token {
payload: "<payload_string>"
}
}
}
}
bidid: "<bidder_generated_response_id>"
cur: "USD"
Native
id: "<bid_request_id>"
seatbid {
bid {
id: "<bidder_generated_response_id>"
impid: "1"
price: 400
adomain: "https://play.google.com/store/apps/details?id=com.test.app"
cid: "<billing_id>"
crid: "<creative_id>"
w: 1200
h: 627
adx_ext {
sdk_rendered_ad {
id: "com.google.ads.mediation.partner.PartnerMediationAdapter"
rendering_data: "<rendering_data_string>"
declared_ad {
click_through_url: "https://play.google.com/store/apps/details?id=com.test.app"
native_response {
...
assets {
id: 1
title {
text: ""
}
}
assets {
id: 2
data {
value: "<some_string>"
}
}
assets {
id: 3
data {
value: "View now"
}
}
assets {
id: 4
img {
url: "<valid_image_url>"
w: 1200
h: 627
type: 3
}
}
assets {
id: 5
img {
url: "<valid_image_url>"
w: 100
h: 100
type: 1
}
}
assets {
id: 6
data {
value: ""
}
}
assets {
id: 7
data {
value: "<some_string>"
}
}
link {
url: "<destination_link>"
}
}
}
}
event_notification_token {
payload: "<payload_string>"
}
}
}
}
bidid: "<bidder_generated_response_id>"
cur: "USD"
Peninjauan materi iklan
Materi iklan akan ditinjau sebelum dapat ditayangkan untuk memastikan materi iklan tersebut memenuhi kebijakan dan setelan penayang kami.
Berikut adalah dua cara untuk mengirimkan materi iklan agar ditinjau:
- Real-time Bidding API (direkomendasikan)
Anda dapat menggunakan metode
buyers.creatives.create
dari Real-time Bidding API untuk mengirimkan materi iklan untuk ditinjau.API ini hanya memerlukan satu pengiriman per materi iklan dan memungkinkan Anda memeriksa status peninjauan materi iklan.
- Respons bid
Anda dapat mengirimkan materi iklan baru langsung di respons bid.
Anda harus menggunakan kolom
declared_ad
dari objekSdkRenderedAd
untuk mengirimkan respons bid dengan materi iklan SDK pembeli untuk ditinjau.Materi iklan yang dikirim dalam respons bid hanya ditinjau setelah banyak bid. Semua bid yang ditempatkan sebelum peninjauan selesai akan difilter dari lelang. Anda dapat menggunakan antarmuka Bidding Real-time atau Bidding Real-time API untuk memeriksa status materi iklan setelah peninjauan dimulai.
Lihat panduan materi iklan untuk mengetahui detail selengkapnya.