खरीदार के SDK टूल का विज्ञापन फ़ॉर्मैट

खरीदार के SDK टूल वाले विज्ञापन, आपके SDK टूल से रेंडर किए गए क्रिएटिव का इस्तेमाल करते हैं.

आपके बिडिंग अडैप्टर को अपने ऐप्लिकेशन में जोड़ने वाले पब्लिशर की मोबाइल ऐप्लिकेशन इन्वेंट्री, खरीदार के SDK टूल के ज़रिए रेंडर किए गए विज्ञापन फ़ॉर्मैट के साथ बिड स्वीकार कर सकती है. आपके SDK टूल को लागू करने और बिड रिस्पॉन्स में सबमिट किए गए SDKRenderedAd के आधार पर, ये रेंडर होते हैं.

बिड लगाई जा सकती है. इसमें खरीदार के SDK टूल से रेंडर किया गया विज्ञापन या Google Mobile Ads SDK पर काम करने वाला कोई भी दूसरा विज्ञापन फ़ॉर्मैट शामिल होता है. हालांकि, ऐसी बिड फ़िल्टर कर दी जाती हैं जिनमें दोनों शामिल हों.

ज़रूरी शर्तें

खरीदार के SDK टूल के विज्ञापन, मंज़ूरी पा चुके खरीदारों के लिए उपलब्ध हैं. इस फ़ॉर्मैट को इस्तेमाल करने के लिए, आपको और पब्लिशर को ज़्यादा कोशिश करनी होगी. खरीदार के SDK टूल विज्ञापनों के लिए अपना खाता कॉन्फ़िगर करने के लिए, अपने तकनीकी खाता मैनेजर से संपर्क करें. इसके बाद, बिडिंग अडैप्टर लागू करें. इसकी मदद से आपका SDK टूल, Google Mobile Ads SDK के साथ इंटरैक्ट कर पाता है. पब्लिशर को आपके SDK टूल और अडैप्टर को अपने मोबाइल ऐप्लिकेशन से इंटिग्रेट करना होगा.

हमारा सुझाव है कि आप बिड रिस्पॉन्स में उन्हें शामिल करने से पहले, क्रिएटिव को समीक्षा के लिए सबमिट करें. अगर आपको बिड के समय क्रिएटिव टाइप की जानकारी नहीं है, तो अपने तकनीकी खाता मैनेजर से संपर्क करें.

अगर बिड रिक्वेस्ट इस विज्ञापन फ़ॉर्मैट के साथ काम करती है, तो बिड रिस्पॉन्स में sdk_rendered_ad फ़ील्ड को सेट करके, उस विज्ञापन के बारे में बताया जा सकता है जो आपके SDK टूल के साथ रेंडर होगा.

बिड रिक्वेस्ट

मोबाइल ऐप्लिकेशन इन्वेंट्री के लिए बिड रिक्वेस्ट में पब्लिशर के ऐप्लिकेशन में मौजूद SDK टूल और अडैप्टर की जानकारी होती है. इनका इस्तेमाल, यहां दिए गए फ़ील्ड में रेंडरिंग के लिए किया जा सकता है:

SDK आईडी

बिड रिक्वेस्ट का इस्तेमाल करके id खोजा जा सकता है. यह आपको खरीदार के SDK टूल की मदद से रेंडर किए गए विज्ञापन के लिए, बिड रिस्पॉन्स में देना होगा.

नीचे दिए गए फ़ील्ड देखें:

  • Authorized Buyers: BidRequest.mobile.installed_sdk
  • ओपनआरटीबी: BidRequest.app.ext.installed_sdk

InstalledSdk मैसेज के बारे में ज़्यादा जानने के लिए, Google और OpenRTB प्रोटोकॉल गाइड देखें.

विज्ञापन यूनिट की मैपिंग

बिड रिक्वेस्ट का इस्तेमाल, बिड स्लॉट से मैच करने वाली विज्ञापन यूनिट की मैपिंग पढ़ने के लिए किया जा सकता है.

नीचे दिए गए फ़ील्ड देखें:

  • Authorized Buyers: BidRequest.AdSlot.ad_unit_mapping
  • ओपनआरटीबी: BidRequest.imp.ext.ad_unit_mapping

AdUnitMapping ऑब्जेक्ट के बारे में ज़्यादा जानने के लिए, Google और OpenRTB प्रोटोकॉल गाइड देखें.

सुरक्षित सिग्नल

आपको एक्सटेंडेड आईडी ऑब्जेक्ट पढ़ना चाहिए. यह ऐसा स्टैंडर्ड एक्सटेंशन है जिसका इस्तेमाल, पब्लिशर के चुने गए सुरक्षित सिग्नल को पास करने के लिए किया जाता है.

नीचे दिए गए फ़ील्ड देखें:

  • Authorized Buyers: BidRequest.AdSlot.SecureSignal.data
  • ओपनआरटीबी: BidRequest.user.ext.eids.uids.id

Extended Id ऑब्जेक्ट के बारे में ज़्यादा जानने के लिए, Google और OpenRTB प्रोटोकॉल गाइड देखें.

जांच के अनुरोध

जांच के अनुरोध वाले फ़ील्ड को पढ़कर यह समझा जा सकता है कि बिड रिक्वेस्ट एक टेस्ट है या नहीं.

नीचे दिए गए फ़ील्ड देखें:

  • Authorized Buyers: BidRequest.is_test
  • ओपनआरटीबी: BidRequest.test

Test फ़ील्ड के बारे में ज़्यादा जानने के लिए, Google और OpenRTB प्रोटोकॉल गाइड देखें.

बिड रिक्वेस्ट का सैंपल

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 ऑब्जेक्ट में इन फ़ील्ड की ज़रूरत होती है:

  • Authorized Buyers:

    • 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 आईडी

विज्ञापन को रेंडर करने के लिए, SDK टूल का आईडी देने के लिए, id फ़ील्ड का इस्तेमाल करें.

बिड रिक्वेस्ट में आईडी देखने के लिए, यहां दिए गए फ़ील्ड का इस्तेमाल करें:

  • Authorized Buyers: BidRequest.mobile.installed_sdk
  • ओपनआरटीबी: BidRequest.app.ext.installed_sdk

InstalledSdk मैसेज के बारे में ज़्यादा जानने के लिए, Google और OpenRTB प्रोटोकॉल गाइड देखें.

एलान किया गया विज्ञापन

declared_ad फ़ील्ड का इस्तेमाल करके ऐसा क्रिएटिव उपलब्ध कराएं जो बिड रिक्वेस्ट CreativeEnforcementSettings की ज़रूरी शर्तों को पूरा करता हो और विज्ञापन के रेंडरिंग डेटा के बारे में बताता हो. नॉन-नेटिव विज्ञापन फ़ॉर्मैट के लिए, html_snippet, video_url या video_vast_xml में से सिर्फ़ एक को प्रज़ेंट किया जाना चाहिए. नेटिव विज्ञापन फ़ॉर्मैट के लिए, सिर्फ़ native_response प्रज़ेंट किया जाना चाहिए.

अगर declared_ad में अपने-आप जानकारी नहीं भरती, तो हम क्रिएटिव की समीक्षा नहीं कर पाएंगे और क्रिएटिव वाली सभी बिड को नीलामी से फ़िल्टर कर दिया जाएगा.

डेटा रेंडर हो रहा है

खरीदार के SDK टूल के लिए डेटा देने के लिए, rendering_data फ़ील्ड का इस्तेमाल करें, ताकि आप अपने विज्ञापन को रेंडर करने के लिए उसका इस्तेमाल कर सकें.

  • Authorized Buyers: BidResponse.ad.sdk_rendered_ad.rendering_data
  • ओपनआरटीबी: 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>",
  }
}

हमारा सुझाव है कि आप रीयल-टाइम बिडिंग एपीआई का इस्तेमाल करके, क्रिएटिव को समीक्षा के लिए सबमिट करें. इसके बाद, उन्हें बिड रिस्पॉन्स में शामिल करें.

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"

क्रिएटिव समीक्षा

दिखाए जाने से पहले क्रिएटिव की समीक्षा की जाती है, ताकि यह पक्का किया जा सके कि वे हमारी नीतियों और पब्लिशर सेटिंग के मुताबिक हैं.

यहां क्रिएटिव को समीक्षा के लिए सबमिट करने के दो तरीके दिए गए हैं:

रीयल-टाइम बिडिंग एपीआई (सुझाया गया)

buyers.creatives.create रीयल-टाइम बिडिंग एपीआई के तरीके का इस्तेमाल करके, क्रिएटिव को समीक्षा के लिए सबमिट किया जा सकता है.

एपीआई को हर क्रिएटिव के लिए सिर्फ़ एक सबमिशन की ज़रूरत होती है. इससे आप अपने क्रिएटिव की समीक्षा की स्थिति जांच सकते हैं.

बिड रिस्पॉन्स

बिडिंग के जवाब में, नए क्रिएटिव सीधे तौर पर सबमिट किए जा सकते हैं.

समीक्षा के मकसद से खरीदार के SDK टूल के साथ बिड रिस्पॉन्स सबमिट करने के लिए, आपको SdkRenderedAd ऑब्जेक्ट के declared_ad फ़ील्ड का इस्तेमाल करना होगा.

बिड के जवाब में सबमिट किए गए क्रिएटिव की समीक्षा, कई बिड लगाने के बाद ही की जाती है. समीक्षा पूरी होने से पहले दी गई सभी बिड, नीलामी से फ़िल्टर की जाती हैं. समीक्षा शुरू होने के बाद, किसी क्रिएटिव की स्थिति जांचने के लिए रीयल-टाइम बिडिंग इंटरफ़ेस या रीयल-टाइम बिडिंग एपीआई का इस्तेमाल करें.

ज़्यादा जानकारी के लिए, क्रिएटिव गाइड देखें.