یک مناقصهگزار میتواند موجودی کالا برای چندین خریدار را در یک پاسخ پیشنهادی خریداری کند. به عنوان مثال، یک پلت فرم سمت تقاضا (DSP) ممکن است از برنامه پیشنهادی خود برای خرید موجودی برای چندین بازاریاب یا آژانس که خریدار هستند استفاده کند. این راهنما توضیح می دهد که چگونه پیشنهاد دهنده خود را برای پردازش یک درخواست ارسال شده از طرف چندین خریدار کد کنید.
پس زمینه
در برخی از سناریوها، یک شبکه تبلیغاتی یا میز معاملات آژانس ممکن است با یک یا چند DSP کار کند. دو گزینه برای خریدارانی که از طریق DSP کار می کنند وجود دارد:
- DSP موجودی را برای بازاریابان یا آژانس هایی که خریدار نیستند خریداری می کند . در این حالت، DSP یک درخواست پیشنهاد دریافت می کند و با یک پیشنهاد پاسخ می دهد. گوگل مستقیماً DSP را صورتحساب میدهد.
- DSP موجودی را برای بازاریابان یا آژانس هایی که خریدار هستند خریداری می کند . DSP یک درخواست پیشنهاد شامل چندین شناسه صورتحساب مرتبط با خریداران واجد شرایط را دریافت میکند و میتواند برای هر خریداری که قصد ارائه مناقصه از طرف آن را دارند، پیشنهادات متمایز ارائه کند. در این مدل، گوگل به خریدار صورتحساب میدهد نه DSP. بقیه این راهنما بر روی این سناریو تمرکز دارد.
راه اندازی و پیش هدف گذاری
Google درخواست پیشنهادی را ارسال میکند که حاوی یک یا چند شناسه صورتحساب مرتبط با خریداران و پیکربندیهای پیشهدفیابی است که نشان را هدف قرار دادهاند. اینها را می توان با فیلد BidRequest.imp.ext.billing_id
پیدا کرد.
هنگام پاسخ به یک BidRequest
که حاوی شناسههای صورتحساب از چندین خریدار است، BidResponse.seatbid.bid.ext.billing_id
مورد نیاز است تا Google بداند کدام حساب را با پیشنهاد مرتبط کند. هر پاسخی که فیلد را تنظیم نکند فیلتر می شود. این فیلد برای هر BidRequest
که فقط شامل یک شناسه صورتحساب است، اختیاری است.
نمونه پیش هدف گذاری
مناقصهدهنده از طرف دو خریدار پیشنهاد میدهد، یکی دارای شناسه صورتحساب 123، و دیگری با شناسه صورتحساب 124. مناقصهدهنده یک پیکربندی پیشهدفیابی را با شناسه صورتحساب 213 برای هدف قرار دادن زبان انگلیسی، و دیگری با شناسه صورتحساب 231 را برای هدف قرار دادن شخصی پیکربندی میکند. کامپیوترها موارد زیر شناسههای صورتحسابهایی را که در درخواستهای پیشنهاد برای انواع مختلف نمایشها نشان داده میشوند، توضیح میدهد.
شرح برداشت | شناسه های صورتحساب در درخواست پیشنهاد |
---|---|
محتوای زبان ژاپنی در رایانه شخصی. | 123، 124، 231 |
محتوای انگلیسی در تلفن همراه. | 123، 124، 213 |
محتوای زبان انگلیسی در رایانه شخصی. | 123، 124، 213، 231 |
نمونه درخواست های پیشنهادی
در زیر نمونه هایی از BidRequest
آورده شده است. توجه داشته باشید که چندین شناسه صورتحساب در این درخواستها وجود دارد، زیرا درخواستها برای چندین حساب قابل اعمال هستند.
OpenRTB Protobuf
id: "n9YFp0D9qE02Q5A49bo68a" imp { id: "1" banner { w: 320 h: 50 pos: ABOVE_THE_FOLD api: MRAID_1 api: MRAID_2 format { w: 320 h: 50 } } displaymanager: "GoogleMobileAds-iOS" displaymanagerver: "11.2.0" tagid: "2913643481" bidfloor: 0.04 bidfloorcur: "USD" secure: true exp: 3600 clickbrowser: true metric { type: "click_through_rate" value: 0.0003642654628492892 vendor: "EXCHANGE" } metric { type: "viewability" value: 0.98 vendor: "EXCHANGE" } [com.google.doubleclick.imp] { billing_id: 41048190734 billing_id: 87998475627 publisher_settings_list_id: 5889715199959683550 publisher_settings_list_id: 3379823455061055318 allowed_vendor_type: 566 allowed_vendor_type: 113 ampad: AMP_AD_NOT_ALLOWED skadn { sourceapp: "com.google.testapp" skadnetids: "6ZVs3vs4" versions: "2.0" versions: "2.1" fidelities: VIEW_THROUGH_ADS fidelities: STOREKIT_RENDERED_ADS } creative_enforcement_settings { policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES } auction_environment: SERVER_SIDE_AUCTION ae: SERVER_SIDE_AUCTION } } app { name: "Test App" bundle: "com.google.testapp" publisher { id: "pub-6227762759521589" [com.google.doubleclick.publisher] { country: "US" } } content { url: "https://www.google.com" livestream: false language: "en" } storeurl: "https://www.google.com" [com.google.doubleclick.app] { inventorypartnerdomain: "OMITTED" } } device { ua: "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148" ip: "192.168.1.0" geo { lat: 0.0 lon: 0.0 country: "USA" region: "TX" metro: "623" city: "Lewisville" type: IP utcoffset: -300 accuracy: 6225 } make: "Apple" model: "iPhone13,2" os: "iOS" osv: "17.4.1" connectiontype: WIFI devicetype: HIGHEND_PHONE lmt: true hwv: "iPhone13,2" w: 390 h: 844 pxratio: 3.0 sua { browsers { brand: "Mozilla" version: "5" version: "0" } browsers { brand: "AppleWebKit" version: "605" version: "1" } platform { brand: "iPhone" version: "17" version: "4" } mobile: true bitness: "64" model: "iPhone" source: USER_AGENT_STRING } [com.google.doubleclick.device] { atts: 2 } } at: FIRST_PRICE tmax: 1000 cur: "USD" bcat: "IAB18-5" bcat: "IAB23-4" bapp: "359917414" bapp: "1446254576" source { schain { complete: true nodes { asi: "testssp.com" sid: "pub-1111111111111111" hp: true } ver: "1.0" } [com.google.doubleclick.source] { omidpn: "Google" omidpv: "afma-sdk-i-v11.2.0" schain { complete: 1 nodes { asi: "testssp.com" sid: "pub-1111111111111111" hp: 1 } ver: "1.0" } } } [com.google.doubleclick.bid_request] { google_query_id: "ANy-z17251-40u3eXfXPL5j3MDPa7n6Ree92uf7354o71FP67Rk5i3G30Ez7p39Ze1722D8H" fcap_scope: FREQUENCY_CAPPING_SCOPE_APP privacy_treatments { allow_user_data_collection: true } }
OpenRTB JSON
{ "id": "pu96xf0D7otnT4Q317588G", "imp": [ { "id": "1", "banner": { "w": 320, "h": 50, "pos": 1, "expdir": [ 1, 2, 3, 4 ], "api": [ 3, 5 ], "format": [ { "w": 320, "h": 50 }, { "w": 320, "h": 100 } ] }, "displaymanager": "GoogleMobileAds-iOS", "displaymanagerver": "10.5.0", "tagid": "1077633402", "bidfloor": 0.01, "bidfloorcur": "USD", "secure": 1, "exp": 3600, "clickbrowser": 1, "metric": [ { "type": "viewability", "value": 0.74, "vendor": "EXCHANGE" }, { "type": "session_depth", "value": 1, "vendor": "EXCHANGE" } ], "ext": { "billing_id": [ "77621228638", "75301362736" ], "dfp_ad_unit_code": "/9041646/google/test", "ampad": 2, "buyer_generated_request_data": [ { "source_app": { "id": "com.google.ads.mediation.test.TestAdapter" }, "data": "Test Data" } ], "excluded_creatives": [ { "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID" }, { "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID" } ], "creative_enforcement_settings": { "policy_enforcement": 1, "publisher_blocks_enforcement": 2 }, "billable_event_rate_adjustment": 1, "auction_environment": 0, "ad_unit_mapping": [ { "keyvals": [ { "key": "OMITTED", "value": "OMITTED" }, { "key": "OMITTED", "value": "OMITTED" } ], "format": 1 } ], "ae": 0 } } ], "app": { "name": "Test App", "bundle": "com.google.testapp", "publisher": { "id": "pub-3858090347872942", "ext": { "country": "JP" } }, "content": { "url": "https://www.google.com", "livestream": 0, "language": "ja" }, "storeurl": "https://www.google.com", "ext": { "installed_sdk": [ { "id": "com.google.ads.mediation.test.TestAdapter", "sdk_version": { "major": 5, "minor": 2, "micro": 6 }, "adapter_version": { "major": 5, "minor": 2, "micro": 600 } } ], "inventorypartnerdomain": "OMITTED" } }, "device": { "ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148", "ip": "192.168.1.0", "geo": { "lat": 0.0, "lon": 0.0, "country": "JPN", "region": "JP-11", "city": "Wako", "type": 2, "utcoffset": 540, "accuracy": 1656 }, "make": "Apple", "model": "iPhone13,2", "os": "iOS", "osv": "17.4.1", "connectiontype": 2, "devicetype": 4, "ifa": "644t6oo9K5630T4P55UhH3U6QwBvyR8434j1", "lmt": 0, "hwv": "iPhone13,2", "w": 390, "h": 844, "pxratio": 3, "sua": { "browsers": [ { "brand": "Mozilla", "version": [ "5", "0" ] }, { "brand": "AppleWebKit", "version": [ "605", "1" ] } ], "platform": { "brand": "iPhone", "version": [ "17", "4" ] }, "mobile": 1, "bitness": "64", "model": "iPhone", "source": 3 }, "ext": { "atts": 3 } }, "user": { "id": "wr62bT596f06jhZ1V77n3I1b63h", "data": [ { "id": "pub-9226299926337762", "name": "Publisher Passed", "segment": [ { "name": "TEST_NAME", "value": "TEST_VALUE" }, { "name": "TEST_NAME", "value": "TEST_VALUE" } ] } ], }, "at": 1, "tmax": 1000, "cur": [ "USD" ], "source": { "schain": { "complete": 1, "nodes": [ { "asi": "testssp.com", "sid": "pub-1111111111111111", "hp": 1 } ], "ver": "1.0" }, "ext": { "omidpn": "Google", "omidpv": "afma-sdk-i-v10.5.0", "schain": { "complete": 1, "nodes": [ { "asi": "testssp.com", "sid": "pub-1111111111111111", "hp": 1 } ], "ver": "1.0" } } }, "ext": { "google_query_id": "ANy-z3D398-yn1l2uC2D50Bl9f19AQ3nSQAI82307LmCWc646P925n10EqSpUdQ1wt1IxQj7", "fcap_scope": 1 } }
گوگل
id: "\330\334\201\343\345\\jN\3313`V^\214\207\003\345\022GP\023\323\251" user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148" url: "https://www.google.com" detected_language: "it" adslot { id: 1 width: 414 width: 320 height: 50 height: 50 excluded_attribute: 15 excluded_attribute: 22 allowed_vendor_type: 489 allowed_vendor_type: 550 excluded_sensitive_category: 36 excluded_sensitive_category: 4 matching_ad_data { billing_id: 97713609660 billing_id: 60373602214 minimum_cpm_micros: 40000 } matching_ad_data { billing_id: 84882034591 billing_id: 74365219129 minimum_cpm_micros: 520000 } slot_visibility: ABOVE_THE_FOLD ad_block_key: 4252652432 publisher_settings_list_id: 8511095895255592384 excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } viewability: 89 click_through_rate: 0.0027791813 allowed_ad_types: ALLOWED_AD_TYPE_BANNER is_amp_page: DIALECT_HTML amp_ad_requirement_type: AMP_AD_NOT_ALLOWED consented_providers_settings { consented_providers: 196 consented_providers: 153 additional_consent_string: "OMITTED" } regs_gdpr: true api: OMID_1 api: MRAID_1 omidpn: "Google" omidpv: "afma-sdk-i-v9.0.0" creative_enforcement_settings { policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES } auction_environment: SERVER_SIDE_AUCTION impression_expiration_seconds: 3600 supported_auction_environment: SERVER_SIDE_AUCTION display_manager: "GoogleMobileAds-iOS" display_manager_version: "9.0.0" } is_test: false timezone_offset: 120 mobile { app_id: "116395214" is_app: true app_name: "Test App" } postal_code: "10011" geo_criteria_id: 20524 publisher_settings_list_id: 9033154688577085139 publisher_type: PUBLISHER_OWNED_AND_OPERATED partner_id: 8689962800479104672 device { device_type: HIGHEND_PHONE platform: "iphone" brand: "Apple" model: "iPhone9,4" os_version { major: 15 minor: 8 micro: 2 } carrier_id: 0 screen_width: 414 screen_height: 736 screen_pixel_ratio_millis: 3000 screen_orientation: PORTRAIT hardware_version: "iPhone9,4" limit_ad_tracking: true app_tracking_authorization_status: DENIED connection_type: WIFI } publisher_country: "IT" publisher_id: "pub-1111111111111111" response_deadline_ms: 1000 google_query_id: "ANy-z17d1Q-rs050w92ve6V2Lm2820pMZ0517u12jT7m02AURu7dw0XbsQ0pK5EAd173Cm1Q" auction_type: FIRST_PRICE geo { lat: 42.85 lon: 13.7 country: "ITA" region: "IT-AP" zip: "63082" utcoffset: 120 accuracy: 19730 } user_agent_data { platform { brand: "iPhone" version: "15" version: "0" } mobile: true model: "iPhone" browsers { brand: "Mozilla" version: "5" version: "0" } browsers { brand: "AppleWebKit" version: "605" version: "1" } bitness: "64" source: USER_AGENT_STRING } supply_chain { complete: true nodes { advertising_system_identifier: "testdomain.com" seller_identifier: "pub-1111111111111111" handles_payment: true } version: "1.0" } frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_NONE privacy_treatments { ip: IP_REDACTED user_agent: USER_AGENT_COARSENED non_personalized_ads_reason: PUBLISHER_DECLARED_NPA allow_user_data_collection: false device_storage_restriction_reason: INSUFFICIENT_USER_CONSENT } inventory_partner_domain: "OMITTED"