بعد أن يعالج تطبيقك طلب عروض الأسعار من Google، يجب أن ينشئ ويرسل ردًا. يوضّح هذا الدليل كيفية ترميز تطبيقك لإنشاء الردّ.
إنشاء رسالة BidResponse بتنسيق Protobuf
تُرسِل "الشراة المعتمَدون" BidRequest
كنص الرسالة في
POST
HTTP. إذا تم ضبط نقطة نهاية عروض الأسعار لاستخدام تنسيق
Protobuf، يجب أن يرسل تطبيقك ردًا مع ضبط عنوان
Content-Type
على application/octet-stream
ونص الرسالة المكوّن من تنسيق تسلسلي لبروتوكول برمجة التطبيقات. ملف تخزين
البروتوكول هو رسالة BidResponse
كما هو محدّد في
openrtb.proto
. يجب أن يعرض تطبيقك BidResponse
قابلاً للتحليل كردّ على كل BidRequest
. إنّ حالات المهلة
والردود التي لا يمكن تحليلها تُعدّ أخطاء، وتعمل Google على الحدّ من
عروض الأسعار التي تسجّل معدّلات أخطاء عالية.
إذا كنت لا تريد تقديم عروض أسعار لمشاهدة إعلان، يجب عرض استجابة HTTP
204 فارغة. يمكنك الحصول على openrtb.proto
من صفحة
البيانات المرجعية.
الرقم التعريفي لتصميم الإعلان
يحدِّد BidResponse
تصميم إعلان من خلال الحقل
BidResponse.seatbid.bid.crid
(الحدّ الأقصى 64 بايت). حتى مواد العرض المشابهة، يجب أن تحتوي على قيم فريدة لهذا الحقل إذا كانت تختلف في أي خصائص ملحوظة، بما في ذلك على سبيل المثال لا الحصر: الحجم وعنوان URL المُعلَن عنه وسمات مواد العرض وأنواع المورّدين. بعبارة أخرى، يجب منح معرّفات مواد إبداعية مختلفة لأي إعلانَين:
- تبدو مختلفة أو تتصرف بشكل مختلف
- عرض الصور بتنسيقات مختلفة
- يتم عرضها بوسائل مختلفة (على سبيل المثال، يتألف أحد الإعلانات من صورة، بينما الآخر عبارة عن فيديو).
أثناء تصميم طلبك، عليك اختيار طريقة منهجية ل إنشاء معرّفات منطقية لأنواع تصميمات الإعلانات التي تخطّط لإرسالها.
سمات الإعلان
تنصح Google بتعريف سمات المواد الإبداعية لوصف
سمات إعلانك واستهدافه باستخدام إما تركيبة من
BidResponse.seatbid.bid.apis
و
BidResponse.seatbid.bid.attr
أو إضافة
BidResponse.seatbid.bid.ext.attribute
. توضّح الخطوات التالية كيفية تحديد السمات:
VPAID
اضبطBidResponse.seatbid.bid.apis
علىVPAID_1
أوVPAID_2
. بالنسبة إلى تنسيق JSON، يمكن ضبط هذا الخيار على1
أو2
على التوالي.MRAID
اضبطBidResponse.seatbid.bid.apis
علىMRAID_1
أو3
لتنسيق JSON.SIZELESS
اضبطBidResponse.seatbid.bid.attr
علىRESPONSIVE
أو18
لتنسيق JSON.PLAYABLE
ويُشار إلى ذلك من خلال ضبطBidResponse.seatbid.bid.attr
علىUSER_INTERACTIVE
أو13
لتنسيق JSON.
اطّلِع على مرجع تصميمات الإعلانات للاطّلاع على شرح حول كيفية الحصول على ملاحظات بشأن السمات التي تم رصدها في تصاميم إعلاناتك.
حقول "عرض الأسعار المفتوح"
إنّ ردود عروض الأسعار التي يرسلها مقدّمو عروض الأسعار في الشبكة الإعلانية وشبكة التبادل الذين يشاركون في "عرض الأسعار المفتوح" مشابهة لتلك التي يرسلها "الشراة المعتمَدون" الذين يشاركون في "عرض أسعار الوقت الفعلي" العادي. يمكن لعملاء عروض الأسعار المفتوحة تحديد عدد صغير من الحقول الإضافية، وقد يكون لبعض الحقول الحالية استخدامات بديلة. وتشمل هذه التحسينات ما يلي:
OpenRTB | الشراة المعتمَدون | التفاصيل |
---|---|---|
BidResponse.imp[].pmp.deals[].id |
BidResponse.ad[].adslot[].exchange_deal_id |
معرّف الصفقة من مساحة اسم التبادل المرتبط بهذه المحاولة الإجرائية ويكون مُدرَجًا في التقارير المرسَلة إلى الناشرين. |
BidResponse.seatbid[].bid[].ext.exchange_deal_type |
BidResponse.ad[].adslot[].exchange_deal_type |
نوع الصفقة التي يتم الإبلاغ عنها للناشرين، ما يؤثّر في كيفية التعامل مع الصفقة في المزاد |
BidResponse.seatbid[].bid[].ext.third_party_buyer_token |
BidResponse.ad[].adslot[].third_party_buyer_token |
الرمز المميّز المستخدَم لتحديد معلومات المشتري النهائي التابع لجهة خارجية إذا كان التبادل بصفته مقدّم عروض أسعار مفتوحة هو وسيط. يتم الحصول على هذه المعلومات من العميل التابع للجهة الخارجية ويجب نقلها إلى Google بدون تغيير في ردّ عروض الأسعار. |
اقتراحات
- فعِّل اتصالات HTTPS المستمرة (المعروفة أيضًا باسم "الاستدامة" أو "إعادة استخدام الاتصال") على خوادمك. اضبط مهلة الانتظار على 10 ثوانٍ على الأقل، ويمكنك ضبط قيم أعلى في العديد من الحالات. تتحقّق Google من ذلك أثناء اختبارات وقت الاستجابة الأولية لتطبيقك، لأنّه يُرسِل "المشترون المعتمَدون" الطلبات بمعدّل مرتفع ويجب تجنُّب الوقت الإضافي الذي يستغرقه إنشاء اتصال TCP منفصل لكل طلب.
أدرِج عنوان URL الاختياري لتتبُّع مرّات الظهور من أجل تتبُّع مرّات الظهور بدلاً من تتبُّع وقت فوز مقدّم عروض الأسعار. ونظرًا للانخفاض في عدد مرات الفوز وعدد عمليات العرض، يؤدي ذلك إلى إحصاءات تتبُّع أكثر دقة.
- يجب أن يكون رمز مقدّم عروض الأسعار خاليًا من الاعتماد على الحقول المتوقّفة نهائيًا، لأنّ ذلك قد يؤدي إلى تعذّر عرض أسعارك بسبب حدوث أخطاء.
- أدرِج
BidResponse.seatbid.bid.w
وBidResponse.seatbid.bid.h
فيBidResponse
. يجب أن يتضمّنBidResponse
لطلب يتضمّن أحجام إعلانات متعددة هذه الحقول وإلا سيتم إسقاطه من المزاد. - يجب ألا يزيد حجم الردّ عن 8 كيلوبايت. قد تؤدي الاستجابات الكبيرة جدًا إلى زيادة وقت استجابة الشبكة وتسبب في انتهاء المهلة.
- اتّبِع الإرشادات المتعلقة بعروض الأسعار في مستودع iOS التي تتطلّب تحديد المصدر من خلال SKAdNetwork.
مثال على استجابة عرض السعر
تمثّل الأمثلة التالية عيّنات قابلة للقراءة من طلبات Protobuf و JSON.
عرض المثال
الاستجابة التسلسليةid: "9u09jhHJXT2fbaDZ9V1x66" seatbid { bid { id: "37Td8Gbw1Lr8161bA4B" impid: "1" price: 0.075 adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>" adomain: "google.com" adomain: "google.com" crid: "test_creative_id_156129" cat: "IAB22" w: 320 h: 50 language: "es" slotinpod: SLOT_POSITION_POD_ANY cattax: IAB_CONTENT_1_0 [com.google.doubleclick.bid] { impression_tracking_url: "https://test.com/impression?id=123456" exchange_deal_type: OPEN_AUCTION event_notification_token { payload: "token" } billing_id: 61560909063 } } seat: "4778:9251:780612" } cur: "USD"
عرض المثال
{ "id": "9u09jhHJXT2fbaDZ9V1x66", "seatbid": [ { "bid": [ { "id": "37Td8Gbw1Lr8161bA4B", "impid": "1", "price": 0.075, "adm": "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>", "adomain": [ "google.com", "google.com" ], "crid": "test_creative_id_156129", "cat": [ "IAB22" ], "w": 320, "h": 50, "language": "es", "slotinpod": 0, "cattax": 1, "ext": { "impression_tracking_url": [ "https://test.com/impression?id=123456" ], "exchange_deal_type": 0, "event_notification_token": { "payload": "token" }, "billing_id": "61560909063" } } ], "seat": "4778:9251:780612" } ], "cur": "USD" }
عرض المثال
الاستجابة التسلسليةad { html_snippet: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>" adslot { id: 1 max_cpm_micros: 226722 billing_id: 78614473201 currency: "USD" } click_through_url: "google.com" attribute: 105 buyer_creative_id: "test_creative_id_827359" width: 336 height: 280 impression_tracking_url: "https://test.com/imp?id=123456" event_notification_token: "token" }
ملاحظة مهمة: يتم عرض رسائل Protobuf المعروضة في المثالين أدناه كنص يمكن لشخص عادي قراءته. ومع ذلك، هذه ليست الطريقة التي يتم بها إرسال الرسائل عبر الشبكة. عند استخدام تنسيق Google أو OpenRTB Protobuf ، لن يتم قبول سوى رسائل BidResponse المتسلسلة.
يمكنك إنشاء رسالة BidResponse
وتسلسلها باستخدام رمز C++ التالي:
BidResponse bid_response; // fill in bid response with bid information string post_response; if (bid_response.SerializeToString(&post_response)) { // respond to the POST with post_response as the content } else { // return an error to the POST }
تحديد تصميم الإعلان
يحدِّد ردّ عرض السعر تصميم الإعلان الذي سيتم عرضه إذا فاز عرض سعرك. يجب أن يتضمّن عرض السعر
أحد أشكال الإعلانات المتوافقة (AMP أو فيديو أو إعلان مدمج). في هذا
المثال، نحدّد تصميم الإعلان باستخدام الحقل html_snippet
.
بدلاً من ذلك، يمكنك تحديد تصميم إعلانك باستخدام واحد من الحقول التالية، استنادًا إلى شكل الإعلان:
- إعلان معروض باستخدام حزمة SDK
BidResponse.seatbid.bid.ext.sdk_rendered_ad
- صفحات AMP
BidResponse.seatbid.bid.amp_ad_url
- الفيديو
BidResponse.seatbid.bid.adm
- الإعلانات المدمَجة مع المحتوى
BidResponse.seatbid.bid.adm_native
حدِّد إعلانًا مستضافًا على خوادمك باستخدام مقتطف HTML في
حقل BidResponse.seatbid.bid.adm
. يتم تضمين المقتطف في ملف iFrame مُدرَج في صفحة الويب، ما يؤدي إلى استرداد الإعلان و
عرضه عند تحميل الصفحة. يجب إنشاء مقتطف HTML لكي يتم عرض الإعلان (البانر أو الإعلان البيني) بشكل صحيح داخل إطار iFrame وبحجم مناسب لموضع الإعلان الذي تقدّم عروض أسعار له.
بالإضافة إلى ذلك، يجب أن يتطابق حجم الإعلان الذي تمّ الإعلان عنه في ردّ عرض السعر مع أحد مجموعات الحجم بالضبط في طلب عرض السعر في الحالات التالية:
- الإعلان هو بانر عادي (وليس فيديو أو إعلان مضمّن مع المحتوى أو إعلان بيني).
- أعلن مقدّم عروض الأسعار عن الحجم في استجابة عرض السعر. يجب تحديد المقاس في حال توفّر أكثر من مقاس واحد في الطلب.
- يتمّ استثناء الإعلانات البينية. بالنسبة إلى الإعلانات البينية، يجب ألا يقلّ عرضها عن% 50 من عرض الشاشة، ويجب ألا يقلّ ارتفاعها عن% 40 من ارتفاع الشاشة.
يمكنك تحديد تصميم مكوّن إعلان مقتطف HTML باستخدام أيّ رمز HTML صالح يتم
عرضه بشكل صحيح، ولكن عليك مراعاة القيود المفروضة على تحديد الحقل
crid
في القسم
إنشاء رسالة BidResponse.
ومن بين استخدامات ذلك وضع معلومات إضافية في وسيطات عناوين URL التي يتم جلبها من خوادمك كجزء من عرض الإعلان. يتيح لك ذلك تمرير
بيانات عشوائية عن مرّة الظهور إلى خوادمك.
إنّ معظم سياسات مقتطفات HTML التي يتم عرضها في ردود عروض الأسعار هي نفسها السياسات المتعلّقة بالإعلانات التابعة لجهات خارجية. للمزيد من المعلومات، يُرجى الاطّلاع على إرشادات البرنامج المتعلّقة بالمشترين المعتمَدين ومتطلبات عرض الإعلانات التابعة لجهات خارجية والإفصاح عن عناوين URL التي يتم النقر عليها في الإعلانات.
تحديد وحدات الماكرو
وحدات الماكرو هي نص منسَّق مضمّن في بعض حقول استجابة عروض الأسعار التي تحتوي على
عناوين URL يتم استبدالها بقيمة ذات صلة في وقت عرض الإعلان. على سبيل المثال،
إذا كان عرض السعر الفائز يتضمّن وحدة الماكرو AUCTION_PRICE
في مقتطف HTML
الإعلاني المضمّن في عرض السعر، سيتم استبدال وحدة الماكرو بقيمة
يمكنك فك تشفيرها لتحديد المبلغ الذي دفعته مقابل مرّة الظهور في
المزاد.
يمكنك تضمين وحدات الماكرو في الحقول التالية:
-
BidResponse.seatbid.bid.adm
تتوفّر وحدات الماكرو لتنسيقات مقتطفات HTML والإعلانات المدمجة وعنوان URL للفيديو وتنسيق XML لإعلانات VAST للفيديوهات.
-
BidResponse.seatbid.bid.adm_native.eventtrackers.url
-
BidResponse.seatbid.bid.adm_native.imptrackers
-
BidResponse.seatbid.bid.ext.amp_ad_url
لا تتوفّر سوى وحدات الماكرو
WINNING_PRICE
وWINNING_PRICE_ESC
الخاصة بـ Google لتصميمات إعلانات AMP. -
BidResponse.seatbid.bid.burl
-
BidResponse.seatbid.bid.ext.impression_tracking_url
استخدِم هذا العنصر بدلاً من
BidResponse.seatbid.bid.burl
إذا كنت تحتاج إلى أكثر من عنوان URL واحد للفوترة.
على سبيل المثال، يمكنك تضمين وحدة ماكرو كجزء من مقتطف HTML من خلال
تضمين ${MACRO}
ضمن عنوان URL المستخدَم لجلب تصميم الإعلان،
حيث يكون MACRO
أحد وحدات الماكرو المتوافقة الموضّحة في
مواصفات OpenRTB.
وحدات ماكرو عروض الأسعار في الوقت الفعلي من Google
تتيح Google استخدام وحدات ماكرو إضافية إلى جانب تلك الوحدات الواردة في مواصفات OpenRTB. ويتم تنسيق هذه الوحدات بشكل مختلف، وستظهر على النحو التالي:
%%MACRO%%
في حال تضمينها في عنوان URL. يوضّح الجدول التالي
وحدات الماكرو هذه:
Macro | الوصف |
---|---|
ADVERTISING_IDENTIFIER |
السماح للمشترين بتلقّي معرّف المعلِنين (IDFA) في نظام التشغيل iOS أو المعرّف الإعلاني في Android عند عرض الإعلانات اطّلِع على فك تشفير معرّفات المعلِنين للاطّلاع على التفاصيل. |
CACHEBUSTER |
تمثيل سلسلة لعدد صحيح عشوائي غير موقَّع من أربعة بايت |
CLICK_URL_UNESC |
عنوان URL غير المشفَّر للنقرة على الإعلان. في المقتطف، يجب أن يتبع رمز برمجي واسِع النطاق لعنوان URL الخاص بالنقرة على الجهة الخارجية مباشرةً رمز برمجي الماكرو. على سبيل المثال، إذا كان عنوان URL للنقرة التابع لجهة خارجية هو
<a href="%%CLICK_URL_UNESC%%http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a> في وقت عرض الإعلان، يتم توسيع هذا النطاق ليشمل ما يلي: <a href="http://google-click-url?...&ad_url=http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a> سيسجِّل عنوان URL النقرة أولاً مع Google، ثم سيعيد توجيهك إلى عنوان URL الخاص بالنقرة التابع للجهة الخارجية. |
CLICK_URL_ESC |
عنوان URL للنقرة على الإعلان الذي تمّ ترميزه استخدِم هذا الإجراء بدلاً من
على سبيل المثال، يمكن استخدام الرمز البرمجي التالي في مقتطف HTML: <a href="http://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC%%"></a> في وقت عرض الإعلان، يتم توسيع هذا النطاق ليشمل ما يلي: <a href="http://my.adserver.com/click?google_click_url=http://google-click- url%3F...%26ad_url%3D"></a> سيؤدي ذلك إلى تسجيل النقرة باستخدام يمكنك إلحاق عنوان URL مشفَّر مزدوجًا بعد
|
CLICK_URL_ESC_ESC |
عنوان URL الذي تم تشفيره مرتين للإعلان. استخدِم هذا الإجراء بدلاً من
على سبيل المثال، يمكن استخدام الرمز البرمجي التالي في مقتطف HTML: <a href="http://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC_ESC%%"></a> في وقت عرض الإعلان، يتم توسيع هذا النطاق ليشمل ما يلي: <a href="http://my.otheradserver.com/click?google_click_url=http%3A%2F%2Fmy.adserver.com%2Fclick%3Fgoogle_click_url%3Dhttp%3A%2F%2Fgoogle-click-%20url%253F...%2526ad_url%253D"></a> |
SCHEME |
يتمّ توسيعه إلى http: إذا كان طلب عروض الأسعار لا يتطلّب طبقة المقابس الآمنة (SSL) أو إلى
https: إذا كان طلب عروض الأسعار يتطلّب طبقة المقابس الآمنة (SSL). |
SITE |
النطاق الذي تم ترميزه لعنوان URL للمحتوى أو المعرّف المجهول للمستودع المجهول |
SITE_URL |
تمّ الإيقاف. تم استبداله بالرمز الموسّع SITE الذي يوفّر وظيفة مماثلة. |
TZ_OFFSET |
معادلة المنطقة الزمنية |
VERIFICATION |
القيم المختلفة للإنتاج ووقت فحص تصميم الإعلان
في مسار التحقّق التنسيق هو:
على سبيل المثال، إذا كان تصميم الإعلان يتضمّن
|
WINNING_PRICE |
تكلفة مرّة الظهور المشفّرة (أي تكلفة تثبيت التطبيق بدلاً من التكلفة لكلّ ألف ظهور) في
الميكرو من عملة الحساب على سبيل المثال، التكلفة الفائزة لكل ألف ظهور التي تبلغ 5 دولار أمريكي
تتوافق مع 5,000,000 تكلفة لكل ألف ظهور في الميكرو، أو 5,000 تكلفة لكل تثبيت في الميكرو. ستكون القيمة المرمّزة
لرمز لتحليل هذه الوحدات النمطية، عليك تنفيذ تطبيق لفك تشفير تأكيدات الأسعار. يُرجى الرجوع إلى صفحة فك تشفير تأكيدات الأسعار للحصول على مزيد من المعلومات. |
WINNING_PRICE_ESC |
WINNING_PRICE التي تم ترميزها لتكون صالحة لعنوان URL |
تشترط Google استخدام إحدى الوحدات النمطية CLICK_URL_UNESC
أو
CLICK_URL_ESC
في تصميم الإعلان المعروض
الذي تقدّمه الجهة الخارجية. تستخدِم Google وحدات الماكرو CLICK_URL
لتتبُّع النقرات.
يستخدم ترميز عنوان URL في وحدات الماكرو المخطط التالي:
- يتم استبدال حرف المسافة بعلامة الجمع (
+
). - تظل الأحرف الأبجدية الرقمية (0-9 وa-z وA-Z) والأحرف من المجموعة !(*،-./:_~ بدون تغيير.
- يتم استبدال جميع الأحرف الأخرى بـ
%XX
، حيث يكونXX
هو الرقم السداسي الذي يمثّل الحرف.
القيود المفروضة على الناشرين والمتطلبات التي يجب استيفاؤها
يتضمّن طلب عرض السعر معلومات عن أنواع القيود وال requirements التي يفرضها الناشرون على تصميمات الإعلانات في المزاد.
BidRequest.bcat
- يمكنك مقارنة الفئات المحظورة المحدّدة في هذا الحقل بتلك التي
تم رصدها لتصاميم الإعلانات التي تم إرسالها باستخدام حقل
detectedCategories
في واجهة برمجة التطبيقات Real-time Bidding API.
- يمكنك مقارنة الفئات المحظورة المحدّدة في هذا الحقل بتلك التي
تم رصدها لتصاميم الإعلانات التي تم إرسالها باستخدام حقل
BidRequest.imp.ext.allowed_vendor_type
BidRequest.imp.secure
- في العادة، سيتم ضبط هذا الخيار دائمًا على
true
لأنّه تشترط Google توفّر طبقة المقابس الآمنة (SSL) لجميع تصميمات الإعلانات.
- في العادة، سيتم ضبط هذا الخيار دائمًا على
BidRequest.imp.{audio/banner/native/video}
BidRequest.imp.{audio/banner/native/video}.api
BidRequest.imp.{audio/banner/native/video}.battr
BidRequest.imp.{audio/banner/video}.mimes
لا تقدِّم أبدًا عروض أسعار باستخدام إعلان يتضمّن ميزة محظورة. بالنسبة إلى الميزات المسموح بها،
مثل نوع المورّد، لا تعرض إعلانًا إلا إذا كان نوع المورّد مُدرَجًا في قائمة
allowed_vendor_type
ضمن BidRequest
. يجب عدم تضمين سوى التنسيقات
الإعلانية المحدّدة في طلب عرض السعر من خلال ملء حقول مثل
BidRequest.imp.banner
في عرض السعر. اطّلِع على مزيد من التفاصيل في ملف تعريف
هذه الحقول في تعريف BidRequest
لملف تخزين بروتوكول BidRequest
.
إذا تم عرض إعلان في BidResponse
، عليك
ضبط حقلَي BidResponse.seatbid.bid.attr
و
BidResponse.seatbid.bid.cat
وأحد الحقلين
BidResponse.seatbid.bid.adomain
أو
BidResponse.seatbid.bid.adm_native.link.url
بدقة في
BidResponse
. إذا كان الإعلان يتضمّن قيمًا متعددة سارية لهؤلاء
الحقول، يجب تضمين كل قيمة. اطّلِع على التعليقات لهذه الحقول في
تعريف ملف تخزين بروتوكول BidResponse
للحصول على مزيد من التفاصيل.
ويتم تجاهل الردود التي لم يتم ضبط هذه الحقول فيها.
القياس المفتوح
تتيح لك ميزة "القياس المفتوح" تحديد مورّدين خارجيين يوفّرون خدمات مستقلة لقياس الأداء والتحقّق من المعلنين للإعلانات التي يتم عرضها في بيئات التطبيقات المتوافقة مع الأجهزة الجوّالة.
تشمل أشكال الإعلانات المتاحة إعلانات الفيديو وإعلانات البانر والإعلانات البينية. لمزيد من المعلومات عن كيفية استخدام "القياس المفتوح" في ردّ عرض سعر يحتوي على هذه التنسيقات، يُرجى الرجوع إلى مقالة مجموعة تطوير البرامج (SDK) لبرنامج "القياس المفتوح" في مركز المساعدة.
أمثلة على الاستجابات لعروض الأسعار
تعرض الأقسام التالية نماذج من ردود عروض الأسعار لأنواع الإعلانات المختلفة.
بانر التطبيق
عرض المثال
الاستجابة التسلسليةid: "8L85Di7e9374c3jriwo2W0" seatbid { bid { id: "0L7hx7783rjD1hT81FH" impid: "1" price: 0.4000000059604645 adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>" adomain: "google.com" crid: "test_creative_id_192654" w: 300 h: 50 burl: "https://test.com/imp?id=123456" [com.google.doubleclick.bid] { impression_tracking_url: "https://test.com/impression?id=123456" billing_id: 70614819650 skadn { version: "3.0" network: "Y8HK1z22" campaign: "72382716" itunesitem: "953637916" sourceapp: "com.google.testapp" fidelities { fidelity: VIEW_THROUGH_ADS nonce: "bf105d9a-6df9-4d49-a10d-44e21a539415" timestamp: "1730359683568" signature: "589Vb2BJlF955D6kUj197D84U8UWWtngYQ73o1SVMEcAk6ju348j0454AOxpR74j95BF13RLC119Qo73nyq2qgp4IJENP6yE" } fidelities { fidelity: STOREKIT_RENDERED_ADS nonce: "bf105d9a-6df9-4d49-a10d-44e21a539415" timestamp: "1730359683568" signature: "3Av39t8684YefY03NT715Z2dTtXQ39pQH7C9aq6Wuh4WzbS044734J7FAlw7690Nm7743G7Z4P6hX8K7H607886b7FBHTCYY" } skadn_opts { always_open_appstore: true } } app_promotion_type: INSTALLS } } seat: "4095:5416:758587" } cur: "USD" [com.google.doubleclick.bid_response] { processing_time_ms: 16 }
عرض المثال
{ "id": "8L85Di7e9374c3jriwo2W0", "seatbid": [ { "bid": [ { "id": "0L7hx7783rjD1hT81FH", "impid": "1", "price": 0.4000000059604645, "adm": "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>", "adomain": [ "google.com" ], "crid": "test_creative_id_192654", "w": 300, "h": 50, "burl": "https://test.com/imp?id=123456", "ext": { "impression_tracking_url": [ "https://test.com/impression?id=123456" ], "billing_id": "70614819650", "skadn": { "version": "3.0", "network": "Y8HK1z22", "campaign": "72382716", "itunesitem": "953637916", "sourceapp": "com.google.testapp", "fidelities": [ { "fidelity": 0, "nonce": "bf105d9a-6df9-4d49-a10d-44e21a539415", "timestamp": "1730359683568", "signature": "589Vb2BJlF955D6kUj197D84U8UWWtngYQ73o1SVMEcAk6ju348j0454AOxpR74j95BF13RLC119Qo73nyq2qgp4IJENP6yE" }, { "fidelity": 1, "nonce": "bf105d9a-6df9-4d49-a10d-44e21a539415", "timestamp": "1730359683568", "signature": "3Av39t8684YefY03NT715Z2dTtXQ39pQH7C9aq6Wuh4WzbS044734J7FAlw7690Nm7743G7Z4P6hX8K7H607886b7FBHTCYY" } ], "skadn_opts": { "always_open_appstore": 1 } }, "app_promotion_type": 1 } } ], "seat": "4095:5416:758587" } ], "cur": "USD", "ext": { "processing_time_ms": 16 } }
عرض المثال
الاستجابة التسلسليةad { html_snippet: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>" adslot { id: 1 max_cpm_micros: 44095 billing_id: 99718422589 } click_through_url: "google.com" attribute: 47 attribute: 50 category: 7 buyer_creative_id: "test_creative_id_997551" advertiser_name: "Google" width: 300 height: 250 impression_tracking_url: "https://test.com/imp?id=123456" skadn { version: "4.0" network: "DofiF4X5" itunesitem: "448730563" sourceapp: "195751234" fidelities { fidelity_type: VIEW_THROUGH_ADS nonce: "a869c155-3566-475c-8cb9-d0a75159e0c5" timestamp: 1728803273481 signature: "0KXE97ri9xnW9M10NDg64r014MsN7SO5R11N29oe8h8Cuao3K477i9dFH61bKny28iA6337A6EK6T3fgR9p9EJK12qvaY96E" } fidelities { fidelity_type: STOREKIT_RENDERED_ADS nonce: "a869c155-3566-475c-8cb9-d0a75159e0c5" timestamp: 1728803273481 signature: "EF1Vj82st371O79029Q9067AL00972U3NqNG9u295r8B4681c12Se2jk34XSR8404681c9WGa9a69779CQ87o9T81Y85198C" } source_identifier: 1 } advertised_app_id: "APP_ID_OMITTED" app_promotion_type: INSTALLS } processing_time_ms: 13
إعلان بيني داخل التطبيق
عرض المثال
الاستجابة التسلسليةid: "6700Z3L2o0zSw9g8IqmiQ5" seatbid { bid { id: "0UBHDN63xQ8hj1F8184" impid: "1" price: 0.016728 adid: "test_creative_id_179418" adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>" adomain: "google.com" crid: "test_creative_id_179418" cat: "IAB13-7" w: 300 h: 600 burl: "https://test.com/imp?id=123456" [com.google.doubleclick.bid] { billing_id: 14443955188 dsa { behalf: "TEST_ADVERTISER" paid: "TEST_PAYING_ENTITY" adrender: false } } } seat: "2054:4176:757161" group: false } bidid: "TI590379-wi3Z9CU8-6j8V-Uj0l1I102h2q" cur: "USD"
عرض المثال
{ "id": "6700Z3L2o0zSw9g8IqmiQ5", "seatbid": [ { "bid": [ { "id": "0UBHDN63xQ8hj1F8184", "impid": "1", "price": 0.016728, "adid": "test_creative_id_179418", "adm": "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>", "adomain": [ "google.com" ], "crid": "test_creative_id_179418", "cat": [ "IAB13-7" ], "w": 300, "h": 600, "burl": "https://test.com/imp?id=123456", "ext": { "billing_id": "14443955188", "dsa": { "behalf": "TEST_ADVERTISER", "paid": "TEST_PAYING_ENTITY", "adrender": 0 } } } ], "seat": "2054:4176:757161", "group": 0 } ], "bidid": "TI590379-wi3Z9CU8-6j8V-Uj0l1I102h2q", "cur": "USD" }
عرض المثال
الاستجابة التسلسليةad { html_snippet: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>" adslot { id: 1 max_cpm_micros: 80117 min_cpm_micros: 0 billing_id: 12608068331 deal_id: 0 } click_through_url: "google.com" attribute: 47 buyer_creative_id: "test_creative_id_266407" advertiser_name: "Google" width: 756 height: 384 impression_tracking_url: "https://test.com/imp?id=123456" event_notification_token: "token" dsa_transparency { buyer_render: true } } processing_time_ms: 11
إعلان فيديو بيني داخل التطبيق
عرض المثال
الاستجابة التسلسليةid: "79N7F1708654i75q3k69j1" seatbid { bid { id: "1gR655162hOsH9q3X6R" impid: "1" price: 2.3833 adid: "test_creative_id_648299" adm: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%" adomain: "google.com" crid: "test_creative_id_648299" attr: VIDEO_IN_BANNER_AUTO_PLAY w: 1920 h: 1080 [com.google.doubleclick.bid] { event_notification_token { payload: "token" } billing_id: 11004606416 skadn { version: "4.0" network: "O5O88B57" itunesitem: "509167749" nonce: "" sourceapp: "com.google.testapp" timestamp: "OMITTED" signature: "OMITTED" fidelities { fidelity: VIEW_THROUGH_ADS nonce: "d3be52b1-8ef6-4277-8922-54450b07fd5b" timestamp: "1730409097616" signature: "8d52E359K158Dj1u89EpLP3544Qz7B10CV0a92YZJ6JXX8d9uXi72N43ZxjRl96Ph7v8R5u1k5y9Aoy3jZcN3C5dxRU390qc" } fidelities { fidelity: STOREKIT_RENDERED_ADS nonce: "d3be52b1-8ef6-4277-8922-54450b07fd5b" timestamp: "1730409097616" signature: "43C2b79X4nPY913Qs3jJLLhCjUNZg39cK022pCE2wH731Ie7q4584b5UGG137Jh12I2R6a0e35LJbvQJbn5o564roQ7G1Mtd" } sourceidentifier: "1" } app_promotion_type: INSTALLS } } seat: "1061:9160:833989" } bidid: "m7V3rjn0-aF599ZZ6-37hA-b9o7DU8CLrtp" cur: "USD"
عرض المثال
{ "id": "79N7F1708654i75q3k69j1", "seatbid": [ { "bid": [ { "id": "1gR655162hOsH9q3X6R", "impid": "1", "price": 2.3833, "adid": "test_creative_id_648299", "adm": "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%", "adomain": [ "google.com" ], "crid": "test_creative_id_648299", "attr": [ 6 ], "w": 1920, "h": 1080, "ext": { "event_notification_token": { "payload": "token" }, "billing_id": "11004606416", "skadn": { "version": "4.0", "network": "O5O88B57", "itunesitem": "509167749", "nonce": "", "sourceapp": "com.google.testapp", "timestamp": "OMITTED", "signature": "OMITTED", "fidelities": [ { "fidelity": 0, "nonce": "d3be52b1-8ef6-4277-8922-54450b07fd5b", "timestamp": "1730409097616", "signature": "8d52E359K158Dj1u89EpLP3544Qz7B10CV0a92YZJ6JXX8d9uXi72N43ZxjRl96Ph7v8R5u1k5y9Aoy3jZcN3C5dxRU390qc" }, { "fidelity": 1, "nonce": "d3be52b1-8ef6-4277-8922-54450b07fd5b", "timestamp": "1730409097616", "signature": "43C2b79X4nPY913Qs3jJLLhCjUNZg39cK022pCE2wH731Ie7q4584b5UGG137Jh12I2R6a0e35LJbvQJbn5o564roQ7G1Mtd" } ], "sourceidentifier": "1" }, "app_promotion_type": 1 } } ], "seat": "1061:9160:833989" } ], "bidid": "m7V3rjn0-aF599ZZ6-37hA-b9o7DU8CLrtp", "cur": "USD" }
عرض المثال
الاستجابة التسلسليةad { adslot { id: 1 max_cpm_micros: 2454000 billing_id: 95400492935 deal_id: 1 } click_through_url: "google.com" attribute: 22 attribute: 105 buyer_creative_id: "test_creative_id_716344" width: 0 height: 0 video_vast_xml: "OMITTED_VAST_XML" event_notification_token: "token" skadn { version: "4.0" network: "113tdmXM" itunesitem: "460184775" sourceapp: "751592940" fidelities { fidelity_type: STOREKIT_RENDERED_ADS nonce: "1c3ed154-33f5-4cb7-960a-3e571cb9c3b9" timestamp: 1728932156118 signature: "7m3PDLV778PZ741T2I3561kkCW3UjIp5p63989cP311iiZ2445v20HP5ymfD8ThYO7437h22075h4h9O21S8A08U1kw3qis2" } fidelities { fidelity_type: VIEW_THROUGH_ADS nonce: "1c3ed154-33f5-4cb7-960a-3e571cb9c3b9" timestamp: 1728932156118 signature: "28X90AX01Z762a3W92186a40Eb4J8ekACsYFo55J8vD445f5pcA80MH45753Iy887596gK8ax0s55ndC23eg0V7P862yS240" } source_identifier: 1 } advertised_app_id: "APP_ID_OMITTED" app_promotion_type: INSTALLS } processing_time_ms: 51
التطبيق الأصلي
عرض المثال
الاستجابة التسلسليةid: "96Z599PGNvp7Mr99138Fm0" seatbid { bid { id: "NQb32Ge7Rtt84wFn2p8" impid: "1" price: 0.153584 adid: "test_creative_id_272596" adomain: "google.com" crid: "test_creative_id_272596" cat: "IAB13-7" burl: "https://test.com/imp?id=123456" adm_native { ver: "1.2" assets { id: 1 required: true title { text: "Luxury Mars Cruises" } } assets { id: 2 required: true data { value: "Visit the planet in a luxury spaceship." } } assets { id: 3 required: false data { value: "Book today" } } assets { id: 4 required: true data { value: "Galactic Luxury Cruises" } } assets { id: 5 required: true img { url: "https://native.test.com/image?id=123456" w: 1200 h: 627 } } link { url: "https://www.google.com" } eventtrackers { event: IMPRESSION method: IMG url: "https://test.com/event?id=123456" } privacy: "https://adssettings.google.com/whythisad?source=display&reasons=OMITTED" } [com.google.doubleclick.bid] { ad_choices_destination_url: "https://test.com/preferences" billing_id: 29846056590 dsa { behalf: "TEST_ADVERTISER" paid: "TEST_PAYING_ENTITY" adrender: false } } } bid { id: "4vwb23qm6iqU6w6G978" impid: "1" price: 0.153584 adid: "test_creative_id_272596" adomain: "google.com" crid: "test_creative_id_272596" cat: "IAB21" burl: "https://test.com/imp?id=123456" adm_native { ver: "1.2" assets { id: 1 required: true title { text: "Luxury Mars Cruises" } } assets { id: 2 required: true data { value: "Visit the planet in a luxury spaceship." } } assets { id: 3 required: false data { value: "Book today" } } assets { id: 4 required: true data { value: "Galactic Luxury Cruises" } } assets { id: 5 required: true img { url: "https://native.test.com/image?id=123456" w: 1200 h: 627 } } link { url: "https://www.google.com" } eventtrackers { event: IMPRESSION method: IMG url: "https://test.com/event?id=123456" } privacy: "https://adssettings.google.com/whythisad?source=display&reasons=OMITTED" } [com.google.doubleclick.bid] { ad_choices_destination_url: "https://test.com/preferences" dsa { behalf: "TEST_ADVERTISER" paid: "TEST_PAYING_ENTITY" adrender: false } } } seat: "4528:1161:591635" group: false } bidid: "hgu4ev7j-ZK929XM0-79f7-0A23O0VN2CFC" cur: "USD"
عرض المثال
{ "id": "96Z599PGNvp7Mr99138Fm0", "seatbid": [ { "bid": [ { "id": "NQb32Ge7Rtt84wFn2p8", "impid": "1", "price": 0.153584, "adid": "test_creative_id_272596", "adomain": [ "google.com" ], "crid": "test_creative_id_272596", "cat": [ "IAB13-7" ], "burl": "https://test.com/imp?id=123456", "ext": { "ad_choices_destination_url": "https://test.com/preferences", "billing_id": "29846056590", "dsa": { "behalf": "TEST_ADVERTISER", "paid": "TEST_PAYING_ENTITY", "adrender": 0 } }, "adm": "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"text\":\"Luxury Mars Cruises\"}},{\"id\":2,\"required\":1,\"data\":{\"value\":\"Visit the planet in a luxury spaceship.\"}},{\"id\":3,\"required\":0,\"data\":{\"value\":\"Book today\"}},{\"id\":4,\"required\":1,\"data\":{\"value\":\"Galactic Luxury Cruises\"}},{\"id\":5,\"required\":1,\"img\":{\"url\":\"https://native.test.com/image?id=123456\",\"w\":1200,\"h\":627}}],\"link\":{\"url\":\"https://www.google.com\"},\"eventtrackers\":[{\"event\":1,\"method\":1,\"url\":\"https://test.com/event?id=123456\"}],\"privacy\":\"https://adssettings.google.com/whythisad?source=display&reasons=OMITTED\"}" }, { "id": "4vwb23qm6iqU6w6G978", "impid": "1", "price": 0.153584, "adid": "test_creative_id_272596", "adomain": [ "google.com" ], "crid": "test_creative_id_272596", "cat": [ "IAB21" ], "burl": "https://test.com/imp?id=123456", "ext": { "ad_choices_destination_url": "https://test.com/preferences", "dsa": { "behalf": "TEST_ADVERTISER", "paid": "TEST_PAYING_ENTITY", "adrender": 0 } }, "adm": "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"text\":\"Luxury Mars Cruises\"}},{\"id\":2,\"required\":1,\"data\":{\"value\":\"Visit the planet in a luxury spaceship.\"}},{\"id\":3,\"required\":0,\"data\":{\"value\":\"Book today\"}},{\"id\":4,\"required\":1,\"data\":{\"value\":\"Galactic Luxury Cruises\"}},{\"id\":5,\"required\":1,\"img\":{\"url\":\"https://native.test.com/image?id=123456\",\"w\":1200,\"h\":627}}],\"link\":{\"url\":\"https://www.google.com\"},\"eventtrackers\":[{\"event\":1,\"method\":1,\"url\":\"https://test.com/event?id=123456\"}],\"privacy\":\"https://adssettings.google.com/whythisad?source=display&reasons=OMITTED\"}" } ], "seat": "4528:1161:591635", "group": 0 } ], "bidid": "hgu4ev7j-ZK929XM0-79f7-0A23O0VN2CFC", "cur": "USD" }
عرض المثال
الاستجابة التسلسليةad { adslot { id: 1 max_cpm_micros: 158000 billing_id: 41106584355 deal_id: 1 } click_through_url: "google.com" attribute: 70 buyer_creative_id: "test_creative_id_251451" advertiser_name: "Google" native_ad { headline: "Luxury Mars Cruises" body: "Visit the planet in a luxury spaceship." call_to_action: "Book today" advertiser: "Galactic Luxury Cruises" image { url: "https://native.test.com/image?id=123456" width: 1200 height: 222 } app_icon { url: "https://native.test.com/icon?id=123456" width: 512 height: 512 } star_rating: 4.300000190734863 click_link_url: "https://www.google.com" } impression_tracking_url: "https://test.com/imp?id=123456" impression_tracking_url: "https://test.com/imp?id=123456" event_notification_token: "token" skadn { version: "4.0" network: "l6x39K4z" itunesitem: "731305960" sourceapp: "627009739" fidelities { fidelity_type: STOREKIT_RENDERED_ADS nonce: "9216faff-74a9-4b35-badc-66878c35f67c" timestamp: 1728975919221 signature: "b0USXkmg02Q3v6p301kYOHG36CCOWWdEo52RHRttB9t8PTNi79qL17E4D6h7UeUSuq479oTK13G2Ev34MJlU86C5vY1SMVw2" } fidelities { fidelity_type: VIEW_THROUGH_ADS nonce: "9216faff-74a9-4b35-badc-66878c35f67c" timestamp: 1728975919221 signature: "4Cf4NH6239z9f3wa8j6420Z7H0UISYxyxN5720444dkq6457I5FY0Jg8bk1xge2P8YgiDp74l2738136v2g1A8D50331IRm0" } source_identifier: 1 } click_tracking_urls: "https://google.com/rtb/click?imp_id=55d2112c-4947-4da5-bc37-b79ebf4577dd" advertised_app_id: "APP_ID_OMITTED" app_promotion_type: INSTALLS } processing_time_ms: 63
فيديو ويب
عرض المثال
الاستجابة التسلسليةid: "b2F6m05a9d83V7I35iw415" seatbid { bid { id: "Ob7259K5679O36pMt00" impid: "1" price: 1.52 adid: "test_creative_id_262797" adm: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%" adomain: "google.com" crid: "test_creative_id_262797" exp: 3600 [com.google.doubleclick.bid] { event_notification_token { payload: "token" } billing_id: 47460168025 } } bid { id: "0890di791A75n9R13jM" impid: "1" price: 1.2 adid: "test_creative_id_262797" adm: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%" adomain: "google.com" crid: "test_creative_id_262797" exp: 3600 [com.google.doubleclick.bid] { event_notification_token { payload: "token" } } } seat: "2121:7826:598388" } cur: "USD"
عرض المثال
{ "id": "b2F6m05a9d83V7I35iw415", "seatbid": [ { "bid": [ { "id": "Ob7259K5679O36pMt00", "impid": "1", "price": 1.52, "adid": "test_creative_id_262797", "adm": "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%", "adomain": [ "google.com" ], "crid": "test_creative_id_262797", "exp": 3600, "ext": { "event_notification_token": { "payload": "token" }, "billing_id": "47460168025" } }, { "id": "0890di791A75n9R13jM", "impid": "1", "price": 1.2, "adid": "test_creative_id_262797", "adm": "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%", "adomain": [ "google.com" ], "crid": "test_creative_id_262797", "exp": 3600, "ext": { "event_notification_token": { "payload": "token" } } } ], "seat": "2121:7826:598388" } ], "cur": "USD" }
عرض المثال
الاستجابة التسلسليةfad { adslot { id: 1 max_cpm_micros: 68340760 min_cpm_micros: 0 billing_id: 75752641104 deal_id: 0 } click_through_url: "google.com" vendor_type: 145 attribute: 47 attribute: 8 video_url: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%" buyer_creative_id: "test_creative_id_877383" advertiser_name: "Google" event_notification_token: "token" dsa_transparency { buyer_render: true } } processing_time_ms: 17
إعلان بانر على الويب للأجهزة الجوّالة لمقدّم عروض الأسعار في التبادل
عرض المثال
الاستجابة التسلسليةid: "l30Zu42070Man1Z5u751yG" seatbid { bid { id: "4X6uu65F9J3m467C571" impid: "1" price: 0.17 adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>" adomain: "google.com" crid: "test_creative_id_941528" w: 320 h: 50 [com.google.doubleclick.bid] { impression_tracking_url: "https://test.com/impression?id=123456" impression_tracking_url: "https://test.com/impression?id=123456" event_notification_token { payload: "token" } billing_id: 50962964480 } } seat: "7632:7504:809671" } bidid: "II638Xkf-6432F06d-VGu8-27B4407D136w" [com.google.doubleclick.bid_response] { processing_time_ms: 70 }
عرض المثال
{ "id": "l30Zu42070Man1Z5u751yG", "seatbid": [ { "bid": [ { "id": "4X6uu65F9J3m467C571", "impid": "1", "price": 0.17, "adm": "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>", "adomain": [ "google.com" ], "crid": "test_creative_id_941528", "w": 320, "h": 50, "ext": { "impression_tracking_url": [ "https://test.com/impression?id=123456", "https://test.com/impression?id=123456" ], "event_notification_token": { "payload": "token" }, "billing_id": "50962964480" } } ], "seat": "7632:7504:809671" } ], "bidid": "II638Xkf-6432F06d-VGu8-27B4407D136w", "ext": { "processing_time_ms": 70 } }