出价方可以在单个出价响应中为多个买方购买广告资源。例如,需求方平台 (DSP) 可能会使用其出价应用为多个营销人员或代理机构(即买方)购买广告资源。本指南介绍了如何对出价方进行编码,以处理代表多个买方发送的单个请求。
背景
在某些情况下,广告联盟或代理机构交易公司可能会选择与一个或多个 DSP 合作。通过 DSP 合作的买方可以选择以下两种方式:
- DSP 为营销人员或代理机构(即 非 买方)购买广告资源。在这种情况下,DSP 会收到一个出价请求 并以一个出价进行响应。Google 会直接向 DSP 收取费用。
- DSP 为营销人员或代理机构(即 买方)购买广告资源。DSP 会收到一个出价请求,其中包含与符合条件的买方关联的多个结算 ID,并且可以为每个 买方(DSP 打算代表其出价)设置不同的出价。在这种模式下,Google 会向 买方(而不是 DSP)收取费用。本指南的其余部分将重点介绍这种情况。
设置和预定位
Google 会发送一个出价请求,其中包含与买方关联的一个或多个结算 ID,以及定位到相应展示机会的预定位配置。
您可以使用 BidRequest.imp.ext.billing_id 字段找到这些信息。
在响应包含来自多个买方的结算 ID 的 BidRequest 时,您需要设置 BidResponse.seatbid.bid.ext.billing_id,以便 Google 知道要将出价与哪个账号相关联。系统会过滤掉未设置该字段的任何响应。对于仅包含单个结算 ID 的任何 BidRequest,该字段仍然是可选字段。
预定位示例
出价方代表两个买方出价,一个买方的结算 ID 为 123,另一个买方的结算 ID 为 124。出价方配置了一个结算 ID 为 213 的预定位配置,以定位到英语,并配置了另一个结算 ID 为 231 的预定位配置,以定位到个人电脑。下面介绍了在针对不同类型的展示机会的出价请求中显示的结算 ID。
| 展示机会说明 | 出价请求中的结算 ID |
|---|---|
| 个人电脑上的日语内容。 | 123、124、231 |
| 手机上的英语内容。 | 123、124、213 |
| 个人电脑上的英语内容。 | 123、124、213、231 |
BidRequest 示例
以下是 BidRequest 的示例。您会注意到,这些请求中包含多个结算 ID
,因为这些请求适用于多个账号。
OpenRTB Protobuf
显示示例
序列化请求id: "2Ic9Szo73ub9164McIS5z4" imp { id: "1" banner { w: 300 h: 250 pos: ABOVE_THE_FOLD format { w: 300 h: 250 } format { w: 320 h: 100 } } tagid: "3354852099" bidfloor: 1.0 bidfloorcur: "JPY" secure: true exp: 3600 metric { type: "click_through_rate" value: 0.0004362155741546303 vendor: "EXCHANGE" } metric { type: "viewability" value: 0.07 vendor: "EXCHANGE" } [com.google.doubleclick.imp] { billing_id: 14872229026 billing_id: 65822939644 publisher_settings_list_id: 5996751740207644979 publisher_settings_list_id: 7279221809215794243 allowed_vendor_type: 0 ampad: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED buyer_generated_request_data { data: "Test Data" } buyer_generated_request_data { data: "Test Data" } excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } excluded_creatives { buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID" } allowed_restricted_category: 32 creative_enforcement_settings { policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES } gpid: "/7780786/example.com/homepage/image_top" } } site { page: "https://www.google.com" publisher { id: "pub-1111111111111111" [com.google.doubleclick.publisher] { country: "GB" } } content { language: "en" } [com.google.doubleclick.site] { amp: DIALECT_HTML page_visibility: VISIBILITY_STATE_VISIBLE uact { wasact: true isact: false } ntype: NAVIGATION_TYPE_NAVIGATE } } device { ua: "OMITTED" geo { lat: 0.0 lon: 0.0 country: "GBR" region: "GB-ENG" zip: "S11" type: IP utcoffset: 60 accuracy: 2754 [com.google.doubleclick.geo] { geo_criteria_id: 9046364 } } ipv6: "2a02:c7c:c202::" language: "en" os: "X11" devicetype: PERSONAL_COMPUTER w: 1536 h: 864 pxratio: 1.25 sua { browsers { brand: "Google Chrome" version: "147" version: "0" } browsers { brand: "Not.A/Brand" version: "8" version: "0" } platform { brand: "Chrome OS" version: "16610" version: "57" } mobile: false architecture: "x86" bitness: "64" source: CLIENT_HINTS_HIGH_ENTROPY } } user { data { id: "0" segment { id: "OMITTED" } segment { id: "OMITTED" } [com.google.doubleclick.data] { segtax: 4 } } consent: "OMITTED" [com.google.doubleclick.user] { consented_providers_settings { consented_providers: 2577 consented_providers: 2309 additional_consent: "OMITTED" } consent: "OMITTED" eids { source: "OMITTED_SOURCE" uids { id: "OMITTED_ID" } } eids { source: "OMITTED_SOURCE" uids { id: "OMITTED_ID" } } } } at: FIRST_PRICE tmax: 500 cur: "BRL" cur: "GBP" bcat: "3" bcat: "4" regs { [com.google.doubleclick.regs] { gdpr: true } } source { schain { complete: true nodes { asi: "testssp.com" sid: "pub-1111111111111111" hp: true } ver: "1.0" } } cattax: GOOGLE_CATEGORIES [com.google.doubleclick.bid_request] { google_query_id: "ANy-zcBbZN-AVQv37tjp208071nti0SFDv2FtD6776DgTHiouw72l227G6q3tZ1777nj5N4A" fcap_scope: FREQUENCY_CAPPING_SCOPE_NONE privacy_treatments { allow_user_data_collection: true } }
OpenRTB JSON
显示示例
{ "id": "2Ic9Szo73ub9164McIS5z4", "imp": [ { "id": "1", "banner": { "w": 300, "h": 250, "pos": 1, "format": [ { "w": 300, "h": 250 }, { "w": 320, "h": 100 } ] }, "tagid": "3354852099", "bidfloor": 1.0, "bidfloorcur": "JPY", "secure": 1, "exp": 3600, "metric": [ { "type": "click_through_rate", "value": 0.0004362155741546303, "vendor": "EXCHANGE" }, { "type": "viewability", "value": 0.07, "vendor": "EXCHANGE" } ], "ext": { "billing_id": [ "14872229026", "65822939644" ], "publisher_settings_list_id": [ "5996751740207644979", "7279221809215794243" ], "allowed_vendor_type": [ 0 ], "ampad": 3, "buyer_generated_request_data": [ { "data": "Test Data" }, { "data": "Test Data" } ], "excluded_creatives": [ { "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID" }, { "buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID" } ], "allowed_restricted_category": [ 32 ], "creative_enforcement_settings": { "policy_enforcement": 2, "publisher_blocks_enforcement": 1 }, "gpid": "/7780786/example.com/homepage/image_top" } } ], "site": { "page": "https://www.google.com", "publisher": { "id": "pub-1111111111111111", "ext": { "country": "GB" } }, "content": { "language": "en" }, "ext": { "amp": 0, "page_visibility": 1, "uact": { "wasact": 1, "isact": 0 }, "ntype": 1 } }, "device": { "ua": "OMITTED", "geo": { "lat": 0.0, "lon": 0.0, "country": "GBR", "region": "GB-ENG", "zip": "S11", "type": 2, "utcoffset": 60, "accuracy": 2754, "ext": { "geo_criteria_id": 9046364 } }, "ipv6": "2a02:c7c:c202::", "language": "en", "os": "X11", "devicetype": 2, "w": 1536, "h": 864, "pxratio": 1.25, "sua": { "browsers": [ { "brand": "Google Chrome", "version": [ "147", "0" ] }, { "brand": "Not.A/Brand", "version": [ "8", "0" ] } ], "platform": { "brand": "Chrome OS", "version": [ "16610", "57" ] }, "mobile": 0, "architecture": "x86", "bitness": "64", "source": 2 } }, "user": { "data": [ { "id": "0", "segment": [ { "id": "OMITTED" }, { "id": "OMITTED" } ], "ext": { "segtax": 4 } } ], "consent": "OMITTED", "ext": { "consented_providers_settings": { "consented_providers": [ "2577", "2309" ], "additional_consent": "OMITTED" }, "consent": "OMITTED", "eids": [ { "source": "OMITTED_SOURCE", "uids": [ { "id": "OMITTED_ID" } ] }, { "source": "OMITTED_SOURCE", "uids": [ { "id": "OMITTED_ID" } ] } ] } }, "at": 1, "tmax": 500, "cur": [ "BRL", "GBP" ], "bcat": [ "3", "4" ], "regs": { "ext": { "gdpr": 1 } }, "source": { "schain": { "complete": 1, "nodes": [ { "asi": "testssp.com", "sid": "pub-1111111111111111", "hp": 1 } ], "ver": "1.0" } }, "cattax": 500, "ext": { "google_query_id": "ANy-zcBbZN-AVQv37tjp208071nti0SFDv2FtD6776DgTHiouw72l227G6q3tZ1777nj5N4A", "fcap_scope": 1, "privacy_treatments": { "allow_user_data_collection": 1 } } }