آگهیهای SDK خریدار از خلاقیتهای ارائهشده توسط SDK خودتان استفاده میکنند.
موجودی برنامه تلفن همراه از ناشران که آداپتور مناقصه شما را در برنامه خود ادغام میکنند، میتوانند پیشنهادهایی را با فرمت آگهی ارائهشده SDK خریدار بپذیرند. نحوه ارائه آنها بر اساس اجرای SDK شما و SDKRenderedAd
است که در پاسخ پیشنهاد ارائه می کنید.
میتوانید پیشنهادی از جمله آگهی ارائهشده SDK خریدار یا هر قالب آگهی دیگری که توسط Google Mobile Ads SDK پشتیبانی میشود، ارائه دهید، اما هر پیشنهادی که حاوی هر دو باشد فیلتر میشود.
الزامات
تبلیغات SDK خریدار برای خریداران تایید شده در دسترس است. این قالب به تلاش بیشتری از جانب شما و ناشر نیاز دارد. برای پیکربندی حساب خود برای تبلیغات خریدار SDK با مدیر حساب فنی خود تماس بگیرید. سپس میتوانید یک آداپتور Bidding را پیادهسازی کنید که SDK شما را قادر میسازد با Google Mobile Ads SDK ارتباط برقرار کند. ناشر باید SDK و آداپتور شما را در برنامه های تلفن همراه خود ادغام کند.
توصیه میکنیم قبل از گنجاندن خلاقیتها در یک پاسخ پیشنهادی، آنها را برای بررسی ارسال کنید . اگر در زمان پیشنهاد نوع خلاقیت را نمی دانید، با مدیر حساب فنی خود تماس بگیرید.
اگر درخواست پیشنهادی از این قالب تبلیغ پشتیبانی میکند، میتوانید با تنظیم فیلد sdk_rendered_ad
در پاسخ پیشنهاد، تبلیغی را مشخص کنید که با SDK شما ارائه شود.
درخواست مناقصه
درخواستهای پیشنهادی برای موجودی برنامه تلفن همراه شامل جزئیات مربوط به SDK و آداپتورهای موجود در برنامه ناشر است که میتوانید برای ارائه در فیلدهای زیر استفاده کنید:
- شناسه SDK
میتوانید از درخواست پیشنهاد برای یافتن
id
که باید در پاسخ پیشنهاد برای آگهی ارائهشده SDK خریدار ارائه کنید، استفاده کنید.فیلدهای زیر را ببینید:
- خریداران مجاز:
BidRequest.mobile.installed_sdk
- OpenRTB:
BidRequest.app.ext.installed_sdk
- خریداران مجاز:
میتوانید درباره پیام
InstalledSdk
در راهنمای پروتکل Google و OpenRTB اطلاعات بیشتری کسب کنید.- نقشه برداری واحد تبلیغات
میتوانید از درخواست پیشنهاد برای خواندن نگاشتهای واحد تبلیغاتی که با جایگاه پیشنهادی مطابقت دارند، استفاده کنید.
فیلدهای زیر را ببینید:
- خریداران مجاز:
BidRequest.AdSlot.ad_unit_mapping
- OpenRTB:
BidRequest.imp.ext.ad_unit_mapping
- خریداران مجاز:
میتوانید درباره شی
AdUnitMapping
در راهنمای پروتکل Google و OpenRTB اطلاعات بیشتری کسب کنید.- سیگنال های ایمن
شما باید شی Extended ID را بخوانید که پسوند استانداردی است که برای ارسال سیگنال های ایمن انتخاب شده توسط ناشر استفاده می شود.
فیلدهای زیر را ببینید:
- خریداران مجاز:
BidRequest.AdSlot.SecureSignal.data
- OpenRTB:
BidRequest.user.ext.eids.uids.id
- خریداران مجاز:
میتوانید در راهنمای پروتکل Google و OpenRTB درباره شی
Extended Id
اطلاعات بیشتری کسب کنید.- درخواست های تست
می توانید قسمت درخواست تست را بخوانید تا متوجه شوید که آیا درخواست پیشنهاد آزمایشی است یا خیر.
فیلدهای زیر را ببینید:
- خریداران مجاز:
BidRequest.is_test
- OpenRTB:
BidRequest.test
- خریداران مجاز:
میتوانید در راهنمای پروتکل Google و OpenRTB درباره قسمت
Test
اطلاعات بیشتری کسب کنید.
نمونه درخواست مناقصه
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>"
...
}
پاسخ پیشنهاد
- پیشنهاد صندلی
فیلدهای زیر در شی
BidResponse.seatbid.bid
ضروری است:خریداران مجاز:
-
BidResponse.Ad.click_through_url
-
BidResponse.Ad.AdSlot.billing_id
-
BidResponse.Ad.buyer_creative_id
-
BidResponse.Ad.width
-
BidResponse.Ad.height
-
OpenRTB:
-
BidResponse.seatbid.bid.adomain
-
BidResponse.seatbid.bid.cid
-
BidResponse.seatbid.bid.crid
-
BidResponse.seatbid.bid.w
-
BidResponse.seatbid.bid.h
-
میتوانید درباره پیام
SeatBid
در راهنمای پروتکل Google و OpenRTB اطلاعات بیشتری کسب کنید.
پاسخ پیشنهادی شما باید شامل SdkRenderedAd
با موارد زیر باشد:
- شناسه SDK
از فیلد
id
برای ارائه شناسه برای SDK برای ارائه آگهی استفاده کنید.شما می توانید شناسه را در درخواست مناقصه با فیلدهای زیر پیدا کنید:
- خریداران مجاز:
BidRequest.mobile.installed_sdk
- OpenRTB:
BidRequest.app.ext.installed_sdk
- خریداران مجاز:
میتوانید درباره پیام
InstalledSdk
در راهنمای پروتکل Google و OpenRTB اطلاعات بیشتری کسب کنید.- آگهی اعلام شده
از یک فیلد
declared_ad
برای ارائه خلاقیتی استفاده کنید که با الزاماتCreativeEnforcementSettings
درخواست پیشنهاد مطابقت دارد و نماینده دادههای رندر آگهی است. برای قالبهای تبلیغاتی غیربومی، فقط یکی ازhtml_snippet
،video_url
یاvideo_vast_xml
باید ارائه شود. برای قالب تبلیغات بومی، فقطnative_response
باید ارائه شود.- خریداران مجاز:
BidResponse.ad.sdk_rendered_ad.declared_ad
- OpenRTB:
BidResponse.seatbid.bid.ext.sdk_rendered_ad.declared_ad
اگر
declared_ad
را پر نکنید، ما نمیتوانیم خلاقیت را بررسی کنیم و همه پیشنهادهای دارای خلاقیت از حراج فیلتر میشوند.- خریداران مجاز:
- ارائه داده ها
از فیلد
rendering_data
برای ارائه دادهها برای SDK خریدار استفاده کنید تا از آن برای ارائه آگهی شما استفاده کند.- خریداران مجاز:
BidResponse.ad.sdk_rendered_ad.rendering_data
- OpenRTB:
BidResponse.seatbid.bid.ext.sdk_rendered_ad.rendering_data
- خریداران مجاز:
مناقصه برای قرار دادن یک تبلیغ SDK خریدار باید یک خلاقیت را در قسمت
declared_ad
مشخص کند. آگهی اعلام شده باید دقیقاً نشان دهندهrendering_data
باشد.در اینجا یک نمونه شی
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>", } }
توصیه میکنیم از API بیدرنگ مناقصه استفاده کنید تا خلاقیتها را قبل از اینکه در یک پاسخ پیشنهادی بگنجانید برای بررسی ارسال کنید .
برای جزئیات بیشتر در مورد فیلدهای SdkRenderedAd
به راهنمای پروتکل Google و OpenRTB مراجعه کنید.
نمونه پاسخ پیشنهادی
در اینجا نمونهای از پاسخهای پیشنهادی برای هر قالب آگهی آمده است:
بنر
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"
بینابینی
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"
ویدیوی پاداش
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"
بومی
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"
بررسی خلاقانه
خلاقیتها قبل از استفاده بررسی میشوند تا اطمینان حاصل شود که با خطمشیها و تنظیمات ناشر ما مطابقت دارند.
در اینجا دو روش وجود دارد که می توانید خلاقیت ها را برای بررسی ارسال کنید:
- Bidding API در زمان واقعی (توصیه می شود)
میتوانید از روش
buyers.creatives.create
API بیدرنگ Bidding برای ارسال خلاقیتها برای بررسی استفاده کنید.API برای هر خلاق فقط به یک ارسال نیاز دارد و به شما امکان میدهد وضعیت بررسی خلاقیت خود را بررسی کنید.
- پاسخ پیشنهاد
میتوانید خلاقیتهای جدید را مستقیماً در پاسخ پیشنهاد ارسال کنید.
شما باید از فیلد
declared_ad
شیSdkRenderedAd
برای ارسال یک پاسخ پیشنهادی با یک خلاقیت SDK خریدار برای بررسی استفاده کنید.خلاقیت های ارسال شده در پاسخ پیشنهاد فقط پس از تعداد زیادی پیشنهاد بررسی می شوند. کلیه پیشنهاداتی که قبل از تکمیل بررسی ارائه شده اند از حراج فیلتر می شوند. برای بررسی وضعیت یک خلاقیت پس از شروع بازبینی، میتوانید از رابط بیدرنگ پیشنهاد یا API در زمان واقعی استفاده کنید.
برای جزئیات بیشتر به راهنمای خلاقیت ها مراجعه کنید.