Bei Anzeigen mit Käufer-SDK werden Creatives verwendet, die von Ihrem eigenen SDK gerendert werden.
Für Inventar in mobilen Apps von Publishern, die Ihren Bidding
Adapter in ihre App einbinden, können Gebote
mit dem vom Käufer-SDK gerenderten Anzeigenformat abgegeben werden. Die Art des Renderings hängt von Ihrer
SDK-Implementierung und der SDKRenderedAd ab, die Sie in der
Gebotsantwort senden.
Sie können ein Gebot abgeben, das entweder eine vom Käufer-SDK gerenderte Anzeige oder ein anderes Anzeigen format enthält, das vom Google Mobile Ads SDK unterstützt wird. Gebote, die beides enthalten, werden herausgefiltert.
Voraussetzungen
Anzeigen mit Käufer-SDK sind für genehmigte Käufer verfügbar. Sie können Authorized Buyers direkt in das Google Mobile Ads SDK einbinden, einschließlich Mediation, Bieteradaptern, und sicheren Signalen. Der Publisher muss Ihr SDK und Ihren Adapter in seine mobilen Apps einbinden.
Weitere Informationen zu diesen Integrationspunkten oder zu anderen Integrationen von On-Device-Signalen oder -Verarbeitungen mit dem Google Mobile Ads SDK zur Verbesserung der Anzeigenrelevanz oder -Messung erhalten Sie von Ihrem technischen Account Manager.
Wir empfehlen, Creatives zur Überprüfung einzureichen, bevor Sie sie in eine Gebotsantwort aufnehmen.
Gebotsanfrage
Gebotsanfragen für Inventar in mobilen Apps enthalten in den folgenden Feldern Details zu den SDKs und Adaptern in der App des Publishers, die Sie für das Rendering verwenden können:
- SDK-ID
In der Gebotsanfrage finden Sie die SDK-ID, die Sie in der Gebotsantwort im Feld
BidRequest.app.ext.installed_sdk.idangeben müssen.Weitere Informationen finden Sie in der
InstalledSdkReferenzdokumentation.- Anzeigenblockzuordnung
In der Gebotsanfrage finden Sie die Anzeigenblockzuordnungen, die mit dem Gebotsplatz übereinstimmen. Verwenden Sie dazu das Feld
BidRequest.imp.ext.ad_unit_mapping.Weitere Informationen finden Sie in der
AdUnitMappingReferenzdokumentation.- Sichere Signale
Publisher können sichere Signale für Bieter freigeben. Sie finden diese in
BidRequest.imp.ext.buyer_generated_request_data.data.Weitere Informationen zur Darstellung sicherer Signale finden Sie in der
BuyerGeneratedRequestDataReferenzdokumentation.- Testanfragen
Mit dem Feld
BidRequest.testkönnen Sie prüfen, ob es sich bei der Gebotsanfrage um einen Test handelt.Weitere Informationen zu diesem Feld finden Sie in der
BidRequestReferenzdokumentation.
Beispiel einer Gebotsanfrage
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>"
...
}
Gebotsantwort
Die folgenden Felder sind in der Gebotsantwort erforderlich:
BidResponse.seatbid.bid.adomainBidResponse.seatbid.bid.ext.billing_idBidResponse.seatbid.bid.cridBidResponse.seatbid.bid.wBidResponse.seatbid.bid.h
Außerdem muss in der Gebotsantwort
BidResponse.seatbid.bid.ext.sdk_rendered_ad
mit Folgendem ausgefüllt werden:
- SDK-ID
Geben Sie im Feld
iddie ID für das SDK an, mit dem die Anzeige gerendert werden soll.Sie finden die ID in
BidRequest.app.ext.installed_sdk.- Deklarierte Anzeige
Geben Sie mit
BidResponse.seatbid.bid.ext.sdk_rendered_ad.declared_adein Creative an, das die Anforderungen inBidRequest.imp.ext.creative_enforcement_settingserfüllt und repräsentativ für die Renderingdaten der Anzeige ist. Nur eines der Felderhtml_snippet,video_url,video_vast_xmlodernative_responsesollte ausgefüllt sein.Wenn Sie
declared_adnicht ausfüllen, können wir das Creative nicht überprüfen. Alle Gebote mit dem Creative werden dann aus der Auktion herausgefiltert.Weitere Informationen zur deklarierten Anzeige finden Sie in der
DeclaredAdReferenzdokumentation.- Renderingdaten
Geben Sie im Feld
BidResponse.seatbid.bid.ext.sdk_rendered_ad.rendering_datadie Daten an, die das Käufer-SDK zum Rendern Ihrer Anzeige verwenden soll.Bei Geboten für eine Anzeige mit Käufer-SDK muss im Feld
declared_adein Creative angegeben werden. Die deklarierte Anzeige muss dierendering_datakorrekt darstellen.Hier ist ein Beispiel für ein
SdkRenderedAd-Objekt:{ "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>", } }
Wir empfehlen, Creatives mit der Real-time Bidding API zur Überprüfung einzureichen, bevor Sie sie in eine Gebotsantwort aufnehmen.
Weitere Informationen zu den
Feldern finden Sie im
OpenRTB-Leitfaden SdkRenderedAd.
Beispiel einer Gebotsantwort
Hier sind Beispiel-Gebotsantworten für die einzelnen Anzeigenformate:
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"
Interstitial
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 mit Prämie
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"
Nativ
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"
Creative-Überprüfung
Creatives werden überprüft, bevor sie ausgeliefert werden können. So soll sichergestellt werden, dass sie unseren Richtlinien und den Publisher Einstellungen entsprechen.
Sie haben zwei Möglichkeiten, Creatives zur Überprüfung einzureichen:
- Real-time Bidding API (empfohlen)
Mit der
buyers.creatives.createMethode der Real-time Bidding API können Sie Creatives zur Überprüfung einreichen.Die API erfordert nur eine Einreichung pro Creative und ermöglicht es Ihnen, den Status der Creative-Überprüfung zu prüfen.
- Gebotsantwort
Sie können neue Creatives direkt in der Gebotsantwort einreichen.
Sie müssen das Feld
declared_addes ObjektsSdkRenderedAdverwenden, um eine Gebotsantwort mit einem Creative mit Käufer-SDK zur Überprüfung einzureichen.In der Gebotsantwort eingereichte Creatives werden erst nach vielen Geboten überprüft. Alle Gebote, die vor Abschluss der Überprüfung abgegeben werden, werden aus der Auktion herausgefiltert. Sie können die Real-time Bidding-Benutzeroberfläche oder die Real-time Bidding API verwenden, um den Status eines Creatives zu prüfen, nachdem die Überprüfung begonnen hat.
Weitere Informationen finden Sie im Leitfaden zu Creatives für mehr Details.