يتناول هذا الدليل مراجع تحديد المشاكل في عرض الأسعار في الوقت الفعلي (RTB) وحلّها، والتي تتيح لك الوصول آليًا.
مقاييس حملات عروض الأسعار في الوقت الفعلي والتي يتم عرضها أيضًا من خلال
أداة عرض الأسعار المطوّلة (RTB) التي تم العثور عليها في
واجهة مستخدم "الشراة المعتمَدون" وتشمل bidders.filterSets
وbidders.accounts.filterSets
جميع الموارد تحتها بشكل هرمي.
باستخدام مقاييس من مراجع تحديد المشاكل في عرض الأسعار في الوقت الفعلي (RTB) لتحديد المشاكل وحلّها، يمكنك الحصول على إحصاءات حول الفرص الضائعة. لتحقيق مرّات ظهور يمكن أن تساعدك في تحسين حملتك التي تستخدم عروض الأسعار في الوقت الفعلي
تعديلات على بنية واجهة برمجة التطبيقات ونمطها
تقدم موارد استكشاف أخطاء عرض الأسعار في الوقت الفعلي (RTB) بعض التغييرات للإشارة بشكل صريح إلى الملكية الوصول إليها، وتوفير تحكم أكثر دقة في البيانات التي تعرضها واجهة برمجة التطبيقات، والتوافق بشكل أفضل مع ممارسات تصميم واجهات Google API.
الموارد على مستوى مقدِّم عرض السعر وعلى مستوى الحساب
يتم تنظيم الموارد ضمن كل من bidders
وbidders.accounts
. تتيح لك هذه تحديد
ما إذا كان طلب بيانات من واجهة برمجة التطبيقات يستهدف أحد مقدِّمي عروض الأسعار (المعروف أيضًا باسم الحساب الرئيسي) وجميع
الحسابات الفرعية أو حسابات "الشراة المعتمَدون" الفردية. في سياق عرض الأسعار في الوقت الفعلي (RTB)
تحديد المشاكل وحلّها، ستعرض الموارد المنظَّمة ضمن bidders.filterSets
مقاييس مجمّعة
لمقدّم عرض السعر وجميع الحسابات الفرعية المرتبطة به. على النقيض من ذلك،
ستعرض الدالة bidders.accounts.filterSets
المقاييس للحساب المحدّد فقط بغض النظر عن
سواء كان نظام عروض أسعار أو حسابًا فرعيًا
ملاحظة: الحسابات التي تفوّض عروض أسعارها إلى مشترٍ آخر لا تُعتبر حسابات تستند إلى عروض أسعار،
وبالتالي لا يمكنها الوصول إلى الموارد على مستوى مقدِّم عرض السعر. بالإضافة إلى ذلك، لا يمكن للحسابات التي لا تستخدم عروض أسعار
الوصول إلى impressionMetrics
وfilteredBidResponses
وbidResponseErrors
وimpressionMetrics
على مستوى الحساب
bidResponsesWithoutBids
مورد.
إضافة أسماء الموارد كمعرّفات فريدة
تُستخدَم أسماء الموارد باعتبارها المعرّفات الفريدة بدلاً من أرقام تعريف الأعداد الصحيحة أو السلاسل. عند إنشاء مثيل جديد لمثيل معين نوع المورد، يجب عليك الآن تحديد نسبي اسم المورد باستخدام مسار معرّف الموارد المنتظم (URI) للمورد متبوعًا بمعرّف المورد المفضل. تشير رسالة الأشكال البيانية في ما يلي أمثلة على الأسماء ذات الصلة بموارد تحديد المشاكل وحلّها في عرض الأسعار في الوقت الفعلي (RTB):
المورد | مثال للاسم |
---|---|
bidders.filterSets | bidders/12345678/filterSets/fset_1 |
bidders.accounts.filterSets | bidders/12345678/accounts/87654321/filterSets/fset_2 |
ملاحظة: يجب أن يكون رقم تعريف المورد المحدّد لـ bidders
في الاسم خاصًا بمقدِّم عرض السعر.
رقم تعريف حساب "الشراة المعتمَدون" بالنسبة إلى accounts
، يجب أن يكون رقم تعريف المورد رقم تعريف حساب لأي مما يلي:
صاحب عرض السعر أو حساب فرعي يديره. في حال عدم معرفة "الشراة المعتمَدون"
بحسابك على Google، فيمكنك استخدام
accounts.list للعثور عليها.
مجموعات الفلاتر
تمثّل مجموعة الفلاتر خيارات الفلترة المتاحة والتي يمكن إنشاؤها على مستوى مقدِّم عرض السعر أو على مستوى الحساب يتم استخدامه لتصفية نتائج القائمة لتحري خلل عرض الأسعار في الوقت الفعلي (RTB) استكشاف الأخطاء وإصلاحها الموارد التي تسترجع مقاييس لحملات عروض الأسعار في الوقت الفعلي
يكون الفلتر الذي يتم تطبيقه عند استرداد المقاييس هو تقاطع كل عامل تصفية في
مجموعة عوامل التصفية. يتم تفسير فلاتر القوائم، مثل platforms
، على أنّها موحّدة لكل عنصر في القائمة.
تكون مجموعات الفلاتر على مستوى الحساب مختلفة عن عروض الأسعار ولا يمكن الوصول إليها إلا من المستوى الذي تم إنشاؤها بغض النظر عن الحساب المستخدَم لإنشائها. مقدِّم عرض سعر وحصة حساب فرعي مجموعات فلاتر تم إنشاؤها على مستوى الحساب، في حين يمكن لمقدّم عرض سعر فقط الوصول إلى الموارد مستوى مقدم عرض السعر. يلخّص الجدول التالي كيفية وصول مقدِّم عروض الأسعار والحسابات الفرعية إلى الموارد. على أي من المستويين:
bidders.filterSets | bidders.accounts.filterSets | |
---|---|---|
حساب مقدِّم عروض الأسعار | طلب بيانات من واجهة برمجة التطبيقات يؤثر في مجموعات الفلاتر على مستوى مقدِّم عرض السعر فقط | طلب بيانات من واجهة برمجة التطبيقات يؤثر في مجموعات الفلاتر على مستوى الحساب فقط |
حساب فرعي | سيعرض طلب البيانات من واجهة برمجة التطبيقات هذا ردًّا على الخطأ. | طلب بيانات من واجهة برمجة التطبيقات يؤثر في مجموعات الفلاتر على مستوى الحساب فقط |
إنشاء مجموعة فلاتر
عند إنشاء مجموعة فلاتر، يجب تحديد نطاق زمني ليكون relativeDateRange
absoluteDateRange
أو realtimeTimeRange
. عند استرداد المقاييس،
يكون الخيار الافتراضي هو تقديم جميع البيانات للنطاق الزمني بالكامل. إذا كنت ترغب في استلام
تقسيم سلسلة زمنية على مدار النطاق الزمني، يمكنك تحديد timeSeriesGranularity
للإشارة إلى الفواصل الزمنية HOURLY
أو DAILY
.
إذا كنت تحتاج إلى ضبط مجموعة فلاتر لفترة زمنية قصيرة فقط، يمكنك ضبط isTransient
.
معلَمة طلب البحث إلى true
. سيشير ذلك إلى أنّ مجموعة الفلاتر مؤقّتة، ما يعني أنّها لن تستمر إلى أجل غير مسمى. ستكون مجموعات الفلاتر المؤقتة متاحة لمدة ساعة واحدة على الأقل بعد إنشائها، ولكن سيتم حذفها في النهاية. بشكلٍ تلقائي، لا تكون مجموعات الفلاتر مؤقتة.
مثال على مستوى مقدِّم عروض الأسعار
لإنشاء مجموعة فلاتر جديدة على مستوى نظام عروض الأسعار، أرسِل طلب POST
إلى معرّف الموارد المنتظم (URI) للمورد "bidders.filterSets
"، والذي يحتوي على التنسيق التالي:
https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets
تحذير: لا يمكن لمجموعات الفلاتر على مستوى مقدّم عروض الأسعار الفلترة حسب أرقام تعريف تصميمات الإعلانات أو الصفقات. وإذا حدّدت هذه الفلاتر عند إنشاء مجموعة فلاتر على مستوى مقدِّم عرض السعر، ستتلقّى ردًّا بخطأ.
طلبفي ما يلي مثال على طلب POST
يؤدي إلى إنشاء مجموعة فلاتر جديدة على مستوى مقدِّم عروض الأسعار بشكل غير عابر:
POST https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets Authorization: Bearer access token here Content-Type: application/json { "name": "bidders/12345678/filterSets/bidder-fs", "format": "DISPLAY", "environment": "APP", "platforms": ["TABLET", "MOBILE"], "absoluteDateRange": { "startDate": { "month": 11, "day": 26, "year": 2017 }, "endDate": { "month": 12, "day": 3, "year": 2017 } }, "timeSeriesGranularity": "DAILY" }
إذا نجح الطلب، يستجيب الخادم برمز الحالة 200 OK. سيتضمّن نص الردّ مورد مجموعة الفلاتر الذي تم إنشاؤه، والذي سيكون مطابقًا لمجموعة الفلاتر المرسَلة في الطلب.
مثال على مستوى الحساب
لإنشاء مجموعة فلاتر جديدة على مستوى الحساب، أرسِل طلب POST
إلى
معرّف الموارد المنتظم (URI) للمورد bidders.accounts.filterSets
، بالتنسيق التالي:
https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets
ملاحظة: يمكن أن يساعدك رقم تعريف المورد المحدّد لـ accounts
رقم تعريف الحساب لأي حساب "الشراة المعتمَدون" يمكن لمقدِّم عرض السعر الوصول إليه
المحدد في عنوان URI، بما في ذلك حساب مقدم عرض السعر نفسه.
في ما يلي مثال على طلب POST
ينشئ مجموعة فلاتر جديدة غير عابرة على مستوى الحساب:
POST https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets Authorization: Bearer access token here Content-Type: application/json { "name": "bidders/12345678/accounts/87654321/filterSets/account-fs", "format": "VIDEO", "environment": "WEB", "platforms": ["DESKTOP"], "absoluteDateRange": { "startDate": { "month": 11, "day": 26, "year": 2017 }, "endDate": { "month": 12, "day": 3, "year": 2017 } }, "timeSeriesGranularity": "DAILY" }
إذا نجح الطلب، يستجيب الخادم برمز الحالة 200 OK. سيقوم نص الاستجابة تضمين مورد مجموعة الفلاتر التي تم إنشاؤها، والذي سيكون مطابقًا لمجموعة الفلاتر المُرسَلة في الطلب.
الحصول على مجموعة فلاتر
يمكن لطريقة الحصول على مجموعة فلاتر فقط بالمستوى نفسه الذي تم إنشاؤها فيه. على سبيل المثال: أحد مقدِّمي عروض الأسعار
يجب أن يستخدم الحساب bidders.accounts.filterSets.get
لاسترداد مجموعة فلاتر تم إنشاؤها في الحساب.
بدلاً من طريقة bidders.filterSets.get
.
على مستوى مقدِّم عروض الأسعار
يمكنك استرداد فلتر تم ضبطه على مستوى نظام عروض الأسعار عن طريق إرسال طلب HTTP GET إلى معرّف الموارد المنتظم (URI) لمورد bidders.filterSets
، بالتنسيق التالي:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets/{filter set resource ID}
وفي ما يلي مثال لذلك:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets/bidder-fs
في حال نجح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK
ومجموعة الفلاتر التي تم استردادها:
{ "name": "bidders/12345678/filterSets/bidder-fs", "format": "DISPLAY", "environment": "APP", "platforms": ["TABLET", "MOBILE"], "absoluteDateRange": { "startDate": { "month": 11, "day": 26, "year": 2017 }, "endDate": { "month": 12, "day": 3, "year": 2017 } }, "timeSeriesGranularity": "DAILY" }
مستوى الحساب
يمكنك استرداد مجموعة فلاتر على مستوى الحساب عن طريق إرسال طلب HTTP GET
إلى معرّف الموارد المنتظم (URI) لمورد bidders.accounts.filterSets
، والذي يكون بالتنسيق التالي:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets/{filter set resource ID}
وفي ما يلي مثال لذلك:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets/account-fs
في حال نجح الطلب، يستجيب الخادم برمز حالة HTTP 200 OK
ومجموعة الفلاتر التي تم استردادها:
{ "name": "bidders/12345678/accounts/87654321/filterSets/account-fs", "format": "VIDEO", "environment": "WEB", "platforms": ["DESKTOP"], "absoluteDateRange": { "startDate": { "month": 11, "day": 26, "year": 2017 }, "endDate": { "month": 12, "day": 3, "year": 2017 } }, "timeSeriesGranularity": "DAILY" }
سرد مجموعات الفلاتر
ستعرض طريقة القائمة مجموعات الفلاتر التي يمكن الوصول إليها من المستوى الذي تم استدعاؤها فقط.
على سبيل المثال، لن يرى حساب مقدِّم عروض أسعار مجموعات فلاتر تم إنشاؤها لنفسه من خلال
bidders.accounts.filterSets.create
عند الاتصال بالرقم bidders.filterSets.list
.
على مستوى مقدِّم عروض الأسعار
يمكنك استرداد كل مجموعات الفلاتر على مستوى نظام عروض الأسعار لمقدّم عرض سعر معيّن من خلال إرسال GET
HTTP.
إلى معرّف الموارد المنتظم (URI) للمورد bidders.filtersets
، بالتنسيق التالي:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets
في ما يلي مثال يضمّ كل مجموعات الفلاتر على مستوى مقدِّم عرض السعر الذي يحمل رقم تعريف الحساب 12345678:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets
{ "filterSets": [{ "filterSetId": "99994", "name": "bidders/12345678/filterSets/test-b-1", "relativeDateRange": { "durationDays": 30 } }, { "realtimeTimeRange": { "startTimeStamp": "2017-11-15T12:30:30.072831583Z" }, "filterSetId": "99995", "name": "bidders/12345678/filterSets/test-b-2", "timeSeriesGranularity": "HOURLY" }, { "absoluteDateRange": { "endDate": { "day": 12, "month": 3, "year": 2017 }, "startDate": { "day": 26, "month": 11, "year": 2017 } }, "filterSetId": "99996", "name": "bidders/12345678/filterSets/bidder-fs", "timeSeriesGranularity": "DAILY", "platforms": ["TABLET", "MOBILE"], "environment": "APP", "format": "DISPLAY" } ] }
مستوى الحساب
يمكنك استرداد كل مجموعات الفلاتر على مستوى الحساب لحساب معيّن من خلال إرسال GET
HTTP.
إلى معرّف الموارد المنتظم (URI) للمورد bidders.accounts.filtersets
، بالتنسيق التالي:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets
في ما يلي مثال يسرد جميع مجموعات الفلاتر على مستوى الحساب لحساب فرعي برقم تعريف الحساب 87654321:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets
{ "filterSets": [{ "realtimeTimeRange": { "startTimeStamp": "2017-11-19T04:24:43.252893487Z" }, "filterSetId": "99997", "name": "bidders/12345678/accounts/87654321/filterSets/test-a-1", "timeSeriesGranularity": "DAILY" }, { "absoluteDateRange": { "endDate": { "day": 3, "month": 12, "year": 2017 }, "startDate": { "day": 26, "month": 11, "year": 2017 } }, "filterSetId": "99998", "name": "bidders/12345678/accounts/87654321/filterSets/account-fs", "timeSeriesGranularity": "DAILY", "platforms": ["DESKTOP"], "environment": "WEB", "format": "VIDEO" } ] }
حذف مجموعة فلاتر
يمكنك استخدام طريقة delete
لإزالة أي مجموعات فلاتر غير عابرة لا
هناك حاجة أطول. يمكنها فقط إزالة مجموعات الفلاتر التي يمكن الوصول إليها من المستوى الذي تم استدعاؤها؛
على سبيل المثال، لا يمكن لحساب يقدّم عروض أسعار حذف مجموعة فلاتر تم إنشاؤها باستخدام bidders.accounts.filterSets.create
مع bidders.filterSets.delete
.
على مستوى مقدِّم عروض الأسعار
يمكنك حذف مجموعة فلاتر على مستوى نظام عروض الأسعار لحساب معيّن من خلال إرسال طلب HTTP يتضمّن DELETE
.
إلى معرِّف الموارد المنتظم (URI) للمورد bidders.filtersets
، بالتنسيق التالي:
DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets/{filter set resource ID}
في ما يلي مثال على حذف مجموعة فلاتر على مستوى مقدِّم عرض السعر:
DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets/test-b-2
وفي حال نجاح الإجراء، سيكون نص الطلب فارغًا. لن يبقى بإمكانك الوصول إلى مجموعة الفلاتر المحدّدة.
مستوى الحساب
يمكنك حذف مجموعة فلاتر على مستوى الحساب لحساب معيّن من خلال إرسال DELETE
HTTP.
إلى معرّف الموارد المنتظم (URI) للمورد bidders.accounts.filtersets
، بالتنسيق التالي:
DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets/{filter set resource ID}
في ما يلي مثال على حذف مجموعة فلاتر على مستوى الحساب:
DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets/test-a-1
وفي حال نجاح الإجراء، سيكون نص الطلب فارغًا. لن يبقى بإمكانك الوصول إلى مجموعة الفلاتر المحدّدة.
استرداد مقاييس تحديد المشاكل في عرض الأسعار في الوقت الفعلي (RTB) وحلّها
تعمل جميع موارد تحديد المشاكل في عرض الأسعار في الوقت الفعلي (RTB) لتحديد المشاكل وحلّها لتلقّي المقاييس بطريقة مماثلة — فلديها
طريقة واحدة لإدراج المقاييس لمجموعة الفلاتر المحدّدة من خلال مسار filterSetName
. ستحدِّد مجموعة الفلاتر المحدّدة الفلاتر والإعدادات التي سيتم تطبيقها عند
الاستعلام عن المقاييس. سيؤدي طلب هذه الموارد من مستوى مقدّم عروض الأسعار إلى عرض مقاييس مجمّعة.
من حساب مقدِّم عرض السعر وجميع الحسابات الفرعية المرتبطة به، في حين أنّ المكالمة الواردة من مستوى الحساب
ستعرض فقط المقاييس لحساب فردي.
مقاييس عروض الأسعار
يتم استخدام مورد bidMetrics
لاسترداد المقاييس التي يتم قياسها في
عدد عروض الأسعار. على سبيل المثال، يمكنك استخدام هذا الخيار لتحديد إجمالي عدد عروض الأسعار على مدار
بنطاق زمني محدّد، وعدد المرات التي لم تتم تصفيتها من المزاد، وفاز بمرة ظهور،
وما إلى ذلك، وكما هو الحال مع جميع الموارد الأخرى لتحديد المشاكل في عرض الأسعار في الوقت الفعلي (RTB) لتحديد المشاكل وحلّها والمستخدمة لجمع المقاييس، تتضمّن هذه الطريقة طريقة list
فقط.
إدراج مقاييس عروض الأسعار على مستوى مقدِّم عروض الأسعار
يمكنك إدراج مقاييس عروض الأسعار على مستوى مقدّم عروض الأسعار لفلتر معيّن تم ضبطه من خلال إرسال GET
HTTP.
إلى معرّف الموارد المنتظم (URI) للمورد bidders.filtersets.bidMetrics
، بالتنسيق التالي:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets/{filter set resource ID}/bidMetrics
وفي ما يلي مثال يسرد مقاييس عروض الأسعار على مستوى مقدّم عروض الأسعار:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets/bidder-fs/bidMetrics
إذا نجح الطلب، يستجيب الخادم برمز حالة 200 OK
ونص يحتوي على صفوف من المقاييس للأبعاد المحددة ودرجة الدقة المحددة.
{ "bidMetricsRows": [{ "bids": { "value": "6160" }, "bidsInAuction": { "value": "5698" }, "billedImpressions": { "value": "1196" }, "impressionsWon": { "value": "2920" }, "measurableImpressions": { "value": "1160" }, "rowDimensions": { "timeInterval": { "endTime": "2017-11-29T08:00:00Z", "startTime": "2017-11-28T08:00:00Z" } }, "viewableImpressions": { "value": "683" } }, { "bids": { "value": "104288" }, "bidsInAuction": { "value": "94016" }, "billedImpressions": { "value": "99" }, "impressionsWon": { "value": "125" }, "measurableImpressions": { "value": "94" }, "rowDimensions": { "timeInterval": { "endTime": "2017-11-30T08:00:00Z", "startTime": "2017-11-29T08:00:00Z" } }, "viewableImpressions": { "value": "87" } }, { "bids": { "value": "3999" }, "bidsInAuction": { "value": "3631" }, "billedImpressions": { "value": "618" }, "impressionsWon": { "value": "1819" }, "measurableImpressions": { "value": "604" }, "rowDimensions": { "timeInterval": { "endTime": "2017-12-01T08:00:00Z", "startTime": "2017-11-30T08:00:00Z" } }, "viewableImpressions": { "value": "369" } }, { "bids": { "value": "15" }, "bidsInAuction": { "value": "3" }, "billedImpressions": {}, "impressionsWon": { "value": "3" }, "measurableImpressions": {}, "rowDimensions": { "timeInterval": { "endTime": "2017-12-02T08:00:00Z", "startTime": "2017-12-01T08:00:00Z" } }, "viewableImpressions": {} } ] }
ملاحظة: لن تظهر في الردّ أيّ حقول تم ضبطها على 0 لمقياس معيّن.
المقياسان الفارغان billedImpressions
وmeasurableImpressions
أعلاه
للإشارة إلى أنه تم تعيين كل من القيمة والتباين لها على 0.
تحذير: بالنسبة إلى أي تقسيم للبيانات في الرد، لن يكون للاستجابة
تضمين الصفوف إذا لم تكن تحتوي على مقياس واحد على الأقل غير صفري. على سبيل المثال، عندما
تم تحديد timeSeriesGranularity
، لن يحتوي الرد على صفوف لأي
timeInterval
على مدار النطاق الزمني المحدّد لمجموعة الفلاتر حيث تكون جميع المقاييس صفرًا.
إدراج مقاييس عروض الأسعار على مستوى الحساب
يمكنك إدراج مقاييس عروض الأسعار على مستوى الحساب لفلتر معيّن تم ضبطه من خلال إرسال GET
HTTP.
عنوان URI للمورد bidders.accounts.filtersets.bidMetrics
، الذي يحتوي على
التنسيق التالي:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets/{filter set resource ID}/bidMetrics
وفي ما يلي مثال يسرد مقاييس عروض الأسعار على مستوى الحساب:
GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets/account-fs/bidMetrics
إذا نجح الطلب، يستجيب الخادم برمز حالة 200 OK
ونص يحتوي على صفوف من المقاييس للأبعاد المحددة ودرجة الدقة المحددة.
{ "bidMetricsRows": [{ "bids": { "value": "1748" }, "bidsInAuction": { "value": "1421" }, "billedImpressions": { "value": "301" }, "impressionsWon": { "value": "915" }, "measurableImpressions": { "value": "298" }, "rowDimensions": { "timeInterval": { "endTime": "2017-12-01T08:00:00Z", "startTime": "2017-11-30T08:00:00Z" } }, "viewableImpressions": { "value": "172" } }, { "bids": { "value": "6" }, "bidsInAuction": { "value": "2" }, "billedImpressions": {}, "impressionsWon": { "value": "1" }, "measurableImpressions": {}, "rowDimensions": { "timeInterval": { "endTime": "2017-12-02T08:00:00Z", "startTime": "2017-12-01T08:00:00Z" } }, "viewableImpressions": {} } ] }
ملاحظة: لن تظهر في الردّ أيّ حقول تم ضبطها على 0 لمقياس معيّن. تشير رسالة الأشكال البيانية
يشير المقياسان الفارغان billedImpressions
وmeasurableImpressions
أعلاه إلى
أن يتم تعيين كل من القيمة والتباين لها على 0.
تحذير: بالنسبة إلى أي تقسيم للبيانات في الردّ، لن يتضمّن الردّ.
الصفوف إذا لم تكن تحتوي على مقياس واحد على الأقل غير صفري. على سبيل المثال، عندما
تم تحديد timeSeriesGranularity
، لن يحتوي الرد على صفوف لأي
timeInterval
على مدار النطاق الزمني المحدّد لمجموعة الفلاتر حيث تكون جميع المقاييس صفرًا.