في آذار (مارس) 2022، أطلقنا الإصدار 2 من Bid Manager API. ومع إصدار هذا الإصدار الجديد، نخطط للإعلان عن تاريخ إيقاف الإصدار 1.1 قريبًا. وننصحك ببدء نقل البيانات من الإصدار 1.1 إلى الإصدار 2 في أقرب وقت ممكن.
نقل بيانات تطبيقك
لنقل البيانات من الإصدار 1.1 إلى الإصدار 2، يجب تعديل عناوين URL لنقاط النهاية لاستدعاء الإصدار 2 وتعديل تطبيقك لمراعاة التغييرات التي قد تؤدي إلى أعطال.
تحديث طلبات البيانات من واجهة برمجة التطبيقات من الإصدار 1.1 إلى الإصدار 2
لاستخدام الإصدار 2 بدلاً من الإصدار 1.1، يجب تحديث طلباتك لاستخدام نقاط نهاية الإصدار الجديد.
حدِّد الطرق المكافئة.
لتعديل طلبات البيانات من واجهة برمجة التطبيقات من استخدام الإصدار v1.1 إلى الإصدار 2، يجب أولاً تحديد طُرق الإصدار v1.1 المكافئة في الإصدار 2.
تم تغيير الأسماء التالية لجميع الخدمات والطرق قليلاً بين الإصدارين 1.1 و2:
- تُعرف الخدمات
Queries
وReports
في الإصدار 1.1 باسمqueries
وqueries.reports
في الإصدار 2. - تمت إعادة تسمية الطرق على النحو التالي في الإصدار 2:
اسم طريقة الإصدار 1.1 طريقة الإصدار 2 المكافئ Queries.createquery
queries.create
Queries.deletequery
queries.delete
Queries.getquery
queries.get
Queries.listqueries
queries.list
Queries.runquery
queries.run
Reports.listreports
queries.reports.list
التحديث إلى نقاط نهاية جديدة
بعد تحديد طرق مماثلة، عليك تعديل طلباتك. على سبيل المثال، لاستدعاء طريقة queries.getquery
مع v1.1، يمكنك استخدام عنوان URL التالي:
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
لاستدعاء الطريقة المكافئة في الإصدار 2، والمعروفة باسم queries.get
، يمكنك تحديث عنوان URL إلى ما يلي:
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
إذا كنت تستخدم مكتبة عملاء لإرسال طلبات إلى واجهة برمجة التطبيقات، عليك استخدام أحدث إصدار من مكتبة العميل وتعديل الإعدادات لاستخدام الإصدار 2.
إجراء التغييرات المطلوبة
نحن بصدد طرح عدد من التغييرات التي قد تؤدي إلى أعطال في الإصدار 2. راجِع التعليمات التالية وأدخِل التغييرات المطلوبة ذات الصلة باستخدامك الحالي لواجهة Indexing Manager API.
تحديث المكالمات إلى خدمة queries
- تم تغيير الحقول التالية في مورد
Query
الذي تم تمثيله في الأصل بكائنات عامة للكائنات المتداخلة لاستخدام أنواع الكائنات التالية: - تم تغيير الحقول التالية في المورد
Query
، والتي تم تمثيلها في الأصل بكائنات القوائم العامة، لتصبح قوائم لأنواع الكائنات الجديدة التالية: - يتم تمثيل الحقول التالية في مورد
Query
، والتي يتم تمثيلها في الأصل بالسلاسل، بأنواع تعداد في الإصدار 2، وتتضمّن التغييرات التالية:- يستخدم الإصدار 2 المكافئ من
metadata.dataRange
الآن التعدادRange
. في التحويل إلى هذا التعداد، تمت إزالة القيمةPREVIOUS_HALF_MONTH
وتم تغيير القيمةTYPE_NOT_SUPPORTED
إلىRANGE_UNSPECIFIED
. - يستخدم
metadata.format
الآن التعدادFormat
. عند التحويل إلى هذا التعداد، تمت إزالة القيمةEXCEL_CSV
وتمّت إضافة القيمةFORMAT_UNSPECIFIED
. params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.match
وparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.match
نستخدم الآن التعدادMatch
.- يستخدم
params.options.pathQueryOptions.pathFilters[].pathMatchPosition
الآن تعدادPathMatchPosition
. في التحويل إلى هذا التعداد، تمت إضافة القيمةPATH_MATCH_POSITION_UNSPECIFIED
. - يستخدم
schedule.frequency
الآن التعدادFrequency
. عند التحويل إلى هذا التعداد، تمت إضافة القيمةFREQUENCY_UNSPECIFIED
. - يستخدم
params.type
الآن التعدادReportType
. عند التحويل إلى هذا التعداد، تم إجراء التغييرات التالية: - تم إيقاف القيم التالية:
TYPE_ACTIVE_GRP
TYPE_AUDIENCE_PERFORMANCE
TYPE_CLIENT_SAFE
TYPE_COMSCORE_VCE
TYPE_CROSS_FEE
TYPE_CROSS_PARTNER
TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER
TYPE_ESTIMATED_CONVERSION
TYPE_FEE
TYPE_KEYWORD
TYPE_LINEAR_TV_SEARCH_LIFT
TYPE_NIELSEN_AUDIENCE_PROFILE
TYPE_NIELSEN_DAILY_REACH_BUILD
TYPE_NIELSEN_ONLINE_GLOBAL_MARKET
TYPE_PAGE_CATEGORY
TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD
TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET
TYPE_PIXEL_LOAD
TYPE_THIRD_PARTY_DATA_PROVIDER
TYPE_TRUEVIEW_IAR
TYPE_VERIFICATION
TYPE_YOUTUBE_VERTICAL
- تم تحديث جميع القيم المتبقية لتعكس بشكل أفضل
القيم المكافئة لها في واجهة المستخدم:
قيم الإصدار 1.1 القيمة المكافئة ReportType
TYPE_NOT_SUPPORTED
REPORT_TYPE_UNSPECIFIED
TYPE_GENERAL
STANDARD
TYPE_INVENTORY_AVAILABILITY
INVENTORY_AVAILABILITY
TYPE_AUDIENCE_COMPOSITION
AUDIENCE_COMPOSITION
TYPE_ORDER_ID
FLOODLIGHT
TYPE_TRUEVIEW
YOUTUBE
TYPE_NIELSEN_SITE
GRP
TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE
YOUTUBE_PROGRAMMATIC_GUARANTEED
TYPE_REACH_AND_FREQUENCY
REACH
TYPE_REACH_AUDIENCE
UNIQUE_REACH_AUDIENCE
TYPE_PATH
FULL_PATH
TYPE_PATH_ATTRIBUTION
PATH_ATTRIBUTION
- يستخدم الإصدار 2 المكافئ من
- تم استبدال الحقول
metadata.dataRange
وreportDataStartTimeMs
وreportDataEndTimeMs
بالحقولrange
وcustomStartDate
وcustomEndDate
. تستخدم حقول التاريخ الجديدة كائناتDate
بدلاً من المللي ثانية منذ حقبة Unix Epoch. تم نقل الحقول البديلة إلى العنصرDataRange
الذي تم تحديده إلى حقلdataRange
في العنصرQueryMetadata
. - تم استبدال الحقلين
schedule.startTimeMs
وschedule.endTimeMs
بالحقلينstartDate
وendDate
في الكائنQuerySchedule
. تستخدم حقول التاريخ الجديدة كائناتDate
بدلاً من المللي ثانية منذ حقبة Unix Epoch. - تمت إزالة الحقول
metadata.running
وmetadata.reportCount
وmetadata.googleCloudStoragePathForLatestReport
وmetadata.googleDrivePathForLatestReport
وmetadata.latestReportRunTimeMs
. بدلاً من ذلك، يجب استرداد المعلومات المتعلقة بأحدث التقارير التي تم إنشاؤها لطلب البحث باستخدام طريقةqueries.reports.list
مع مَعلمة طلب البحث "key.reportId desc"orderBy
لضمان إدراج الطلب لأحدث التقارير أولاً. - تمت إزالة الحقول
kind
وtimezoneCode
وmetadata.locale
وparams.includeInviteData
وschedule.nextRunMinuteOfDay
. - لم تعُد أداة
queries.create
تنفِّذ طلبات البحث تلقائيًا بعد إنشائها، وتمت إزالة مَعلمة طلب البحثasynchronous
. يمكنك الاتصال بالرقمqueries.run
بعدqueries.create
لإنشاء تقارير لطلبات البحث الجديدة. - تم تعديل طريقة
queries.run
على النحو التالي:- تم استبدال مَعلمة طلب البحث
asynchronous
بمَعلمة طلب البحثsynchronous
. تعمل معلمة طلب البحث الجديدة بمنطق عكسي وتُعتبر false إذا لم يتم تحديدها. بناءً على ذلك، تُنشئ أداةqueries.run
التقارير بشكلٍ غير متزامن تلقائيًا في الإصدار 2 بدلاً من المزامنة، وهو الإعداد التلقائي في الإصدار 1.1. - تم تعديل نص الطلب لإزالة الحقل
timezoneCode
واستبدال الحقولdataRange
وreportDataStartTimeMs
reportDataEndTimeMs
بكائنDataRange
تم تعيينه للحقلdataRange
. - تعرض الطريقة عنصر
Report
الناتج بدلاً من نص استجابة فارغ.
- تم استبدال مَعلمة طلب البحث
- تمت إزالة الحقل
kind
في نص الاستجابةqueries.list
.
تحديث المكالمات إلى خدمة reports
- تم تغيير الحقول التالية في المورد
Report
الذي تم تمثيله في الأصل بكائنات عامة مدمجة لاستخدام أنواع الكائنات التالية: - تم تغيير الحقول التالية في المورد
Report
الممثلة في الأصل بكائنات قوائم عامة لتصبح قوائم لأنواع الكائنات الجديدة التالية: - تم تغيير الحقول التالية في المورد
Report
الممثلة بالسلاسل في الأصل، لذا يتم تمثيل الحقول المكافئة في v2 بأنواع تعداد جديدة وتتضمن تغييرات في القيم المقبولة:- يستخدم
metadata.status.format
الآن التعدادFormat
. عند التحويل إلى هذا التعداد، تمت إزالة القيمةEXCEL_CSV
وإضافةFORMAT_UNSPECIFIED
. - يستخدم
metadata.status.state
الآن التعدادState
. عند التحويل إلى هذا التعداد، تمت إضافة القيمتينQUEUED
وSTATE_UNSPECIFIED
. params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.match
وparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.match
نستخدم الآن التعدادMatch
.- يستخدم
params.options.pathQueryOptions.pathFilters[].pathMatchPosition
الآن تعدادPathMatchPosition
. في التحويل إلى هذا التعداد، تمت إضافة القيمةPATH_MATCH_POSITION_UNSPECIFIED
. - يستخدم
params.type
الآن التعدادReportType
. عند التحويل إلى هذا التعداد، تم إجراء العديد من التغييرات وتم سردها بالتفصيل في القسم السابق بشأن تحديث استدعاءات خدمة الاستعلامات.
- يستخدم
- تم استبدال الحقول
metadata.reportDataStartTimeMs
وmetadata.reportDataEndTimeMs
بالحقلينreportDataStartDate
وreportDataEndDate
في الكائنReportMetadata
. تستخدم الحقول الجديدة الكائناتDate
بدلاً من المللي ثانية منذ حقبة Unix Epoch. - تم استبدال
metadata.status.finishTimeMs
بالحقلfinishTime
في الكائنReportStatus
. يمثل حقل الوقت الجديد هذا التاريخ والوقت كطابع زمني بتنسيق RFC3339 UTC "Zulu" بدلاً من بالمللي ثانية منذ فترة Unix Epoch. - تمت إزالة حقلَي
metadata.status.failure
وparams.includeInviteData
. - تمت إزالة الحقل
kind
في نص الاستجابةreports.list
.
تعديل منطق معالجة الأخطاء
تم تحديث رسائل الخطأ في واجهة برمجة التطبيقات في الإصدار 2. تكون رسائل الخطأ الجديدة هذه أكثر تحديدًا، وفي بعض الحالات، تقدِّم معلومات حول القيم في طلب واجهة برمجة التطبيقات التي تسبب ظهور الخطأ. إذا كان منطقك الحالي لمعالجة الأخطاء يعتمد على نص رسالة خطأ معيّن، عليك تعميم معالجة الأخطاء قبل الانتقال إلى الإصدار 2.