در مارس 2022، نسخه 2 Bid Manager API را منتشر کردیم. با توجه به انتشار این نسخه جدید، قصد داریم به زودی تاریخ غروب آفتاب را برای نسخه 1.1 اعلام کنیم. توصیه می کنیم در اسرع وقت مهاجرت خود را از نسخه 1.1 به نسخه 2 آغاز کنید.
درخواست خود را مهاجرت کنید
مهاجرت از نسخه 1.1 به نسخه 2 نیازمند به روز رسانی URL های نقطه پایانی برای فراخوانی نسخه 2 و به روز رسانی برنامه برای حساب کاربری برای تغییرات شکسته است.
تماس های API خود را از نسخه 1.1 به نسخه 2 به روز کنید
برای استفاده از v2 به جای v1.1، باید درخواست های خود را برای استفاده از نقاط پایانی جدید v2 به روز کنید.
روش های معادل را شناسایی کنید
برای بهروزرسانی تماسهای API از استفاده از v1.1 به v2، ابتدا باید روشهای معادل v1.1 را در v2 شناسایی کنید.
نامهای زیر همه سرویسها و روشها بین نسخه 1.1 و 2 کمی تغییر کرده است:
-
QueriesوReportsServices در v1.1 به عنوانqueriesوqueries.reportsدر v2 شناخته میشوند. - متدها در v2 به صورت زیر تغییر نام داده اند:
بهروزرسانی به نقاط پایانی جدید
هنگامی که روش های معادل را شناسایی کردید، باید درخواست های خود را به روز کنید. به عنوان مثال، برای فراخوانی متد queries.getquery با v1.1، از URL زیر استفاده کنید:
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
برای فراخوانی متد معادل در v2، معروف به queries.get ، URL را به شکل زیر به روز کنید:
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
اگر از کتابخانه سرویس گیرنده برای درخواست به API استفاده می کنید، از جدیدترین نسخه کتابخانه سرویس گیرنده استفاده کنید و پیکربندی خود را برای استفاده از v2 به روز کنید.
تغییرات لازم را انجام دهید
ما در حال معرفی تعدادی از تغییرات شکسته در نسخه 2 هستیم. دستورالعملهای زیر را مرور کنید و تغییرات مورد نیاز مربوط به استفاده فعلی خود از Bid Manager API را اعمال کنید.
به روز رسانی تماس ها به خدمات queries
- فیلدهای زیر در منبع
Queryکه در اصل با اشیاء تودرتو عمومی نشان داده میشوند، برای استفاده از انواع شیء زیر تغییر کردهاند: - فیلدهای زیر در منبع
Queryکه در اصل با اشیاء لیست عمومی نشان داده میشوند، به لیستهایی از انواع شی جدید زیر تغییر کردهاند: - فیلدهای زیر در منبع
Queryکه در اصل با رشته ها نمایش داده می شوند، با انواع enum در v2 نشان داده می شوند و شامل تغییرات زیر هستند:- معادل v2
metadata.dataRangeاکنون ازRangeenum استفاده می کند. در تبدیل به این enum، مقدارPREVIOUS_HALF_MONTHحذف شد و مقدارTYPE_NOT_SUPPORTEDبهRANGE_UNSPECIFIEDتغییر یافت. - اکنون
metadata.formatازFormatenum استفاده می کند. در تبدیل به این enum، مقدار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استفاده می کند. در تبدیل به این enum، مقدارPATH_MATCH_POSITION_UNSPECIFIEDاضافه شده است. -
schedule.frequencyاکنون ازFrequencyenum استفاده می کند. در تبدیل به این enum، مقدارFREQUENCY_UNSPECIFIEDاضافه شده است. -
params.typeاکنون از فهرستReportTypeاستفاده می کند. در تبدیل به این enum تغییرات زیر اعمال شده است: - مقادیر زیر منسوخ شده اند:
-
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
-
- مقادیر باقیمانده همگی بهروزرسانی شدهاند تا مقادیر معادل خود را در UI بهتر منعکس کنند:
v1.1 مقادیر مقدار ReportTypeمعادلTYPE_NOT_SUPPORTEDREPORT_TYPE_UNSPECIFIEDTYPE_GENERALSTANDARDTYPE_INVENTORY_AVAILABILITYINVENTORY_AVAILABILITYTYPE_AUDIENCE_COMPOSITIONAUDIENCE_COMPOSITIONTYPE_ORDER_IDFLOODLIGHTTYPE_TRUEVIEWYOUTUBETYPE_NIELSEN_SITEGRPTYPE_PETRA_NIELSEN_AUDIENCE_PROFILEYOUTUBE_PROGRAMMATIC_GUARANTEEDTYPE_REACH_AND_FREQUENCYREACHTYPE_REACH_AUDIENCEUNIQUE_REACH_AUDIENCETYPE_PATHFULL_PATHTYPE_PATH_ATTRIBUTIONPATH_ATTRIBUTION
- معادل v2
- فیلدهای
metadata.dataRange،reportDataStartTimeMs، وreportDataEndTimeMsبا فیلدهایrange،customStartDateوcustomEndDateجایگزین شدهاند. فیلدهای تاریخ جدید از زمان Unix Epoch به جای میلی ثانیه از اشیاءDateاستفاده می کنند. این فیلدهای جایگزین به شیDataRangeکه به فیلدdataRangeدر شیQueryMetadataاختصاص داده شده است منتقل شده اند. - فیلدهای
schedule.startTimeMsوschedule.endTimeMsبا فیلدهایstartDateوendDateدر شیQueryScheduleجایگزین شده اند. فیلدهای تاریخ جدید از زمان Unix Epoch به جای میلی ثانیه از اشیاءDateاستفاده می کنند. - فیلدهای
metadata.running،metadata.reportCount،metadata.googleCloudStoragePathForLatestReport،metadata.googleDrivePathForLatestReport، وmetadata.latestReportRunTimeMsحذف شدهاند. اطلاعات مربوط به جدیدترین گزارشهای تولید شده یک پرس و جو باید با استفاده از روشqueries.reports.listبا پارامتر پرس و جوorderBy«key.reportId desc» بازیابی شود تا تضمین شود که درخواست ابتدا آخرین گزارشها را فهرست میکند. - فیلدهای
kind،timezoneCode،metadata.locale،params.includeInviteData، وschedule.nextRunMinuteOfDayحذف شده اند. -
queries.createدیگر پس از ایجاد پرس و جوها را به صورت خودکار اجرا نمی کند و پارامتر پرس و جوasynchronousحذف شده است.queries.runرا پس ازqueries.createفراخوانی کنید تا گزارش هایی برای درخواست های جدید ایجاد کنید. - متد
queries.runبه روش های زیر به روز شده است:- پارامتر پرس و جو
asynchronousبا پارامتر پرس و جوsynchronousجایگزین شده است. پارامتر پرس و جو جدید با منطق معکوس عمل می کند و اگر مشخص نشود نادرست در نظر گرفته می شود. با توجه به این موضوع،queries.runبه طور پیشفرض گزارشهایی را بهطور پیشفرض در v2 تولید میکند، برخلاف همزمان، که پیشفرض در v1.1 است. - بدنه درخواست برای حذف فیلد
timezoneCodeو جایگزینی فیلدهایdataRange،reportDataStartTimeMs،reportDataEndTimeMsبا یک شیDataRangeبه فیلدdataRangeبهروزرسانی شده است. - متد به جای یک بدنه پاسخ خالی، شی
Reportحاصل را برمی گرداند.
- پارامتر پرس و جو
- فیلد
kindدر بدنه پاسخqueries.listحذف شده است.
به روز رسانی تماس ها به خدمات reports
- فیلدهای زیر در منبع
Reportکه در اصل با اشیاء تودرتو عمومی نشان داده میشوند، برای استفاده از انواع شیء زیر تغییر کردهاند: - فیلدهای زیر در منبع
Reportکه در اصل با اشیاء فهرست کلی نشان داده میشوند، به فهرستهایی از انواع شی جدید زیر تغییر کردهاند: - فیلدهای زیر در منبع
Reportکه در اصل با رشتهها نمایش داده میشوند، تغییر کردهاند، بنابراین فیلدهای معادل آنها در v2 با انواع enum جدید نشان داده میشوند و شامل تغییراتی در مقادیر قابل قبول میشوند:-
metadata.status.formatاکنون ازFormatenum استفاده می کند. در تبدیل به این enum، مقدارEXCEL_CSVحذف شده وFORMAT_UNSPECIFIEDاضافه شده است. -
metadata.status.stateاکنون ازStateenum استفاده می کند. در تبدیل به این enum، مقادیر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استفاده می کند. در تبدیل به این enum، مقدارPATH_MATCH_POSITION_UNSPECIFIEDاضافه شده است. -
params.typeاکنون از فهرستReportTypeاستفاده می کند. در تبدیل به این شماره، تغییرات متعددی ایجاد شده است و در قسمت قبل در مورد به روز رسانی تماس های سرویس پرس و جو به تفصیل ذکر شده است.
-
- فیلدهای
metadata.reportDataStartTimeMsوmetadata.reportDataEndTimeMsبا فیلدهایreportDataStartDateوreportDataEndDateدر شیReportMetadataجایگزین شده اند. فیلدهای جدید از زمان Unix Epoch به جای میلی ثانیه از اشیاءDateاستفاده می کنند. -
metadata.status.finishTimeMsبا فیلدfinishTimeدر شیReportStatusجایگزین شده است. این فیلد زمان جدید تاریخ زمان را بهعنوان مهر زمانی در قالب RFC3339 UTC "Zulu" به جای میلیثانیه از زمان Unix Epoch نشان میدهد. - فیلدهای
metadata.status.failureوparams.includeInviteDataحذف شده اند. - فیلد
kindدر بدنه پاسخreports.listحذف شده است.
منطق رسیدگی به خطا را به روز کنید
پیام های خطا در سراسر API در نسخه 2 به روز شده است. این پیامهای خطای جدید خاصتر هستند و در برخی موارد، اطلاعاتی در مورد مقادیر درخواست API ارائه میدهند که باعث بازگشت خطا میشوند. اگر منطق رسیدگی به خطای موجود شما متکی به متن پیام خطای خاص است، قبل از مهاجرت به نسخه 2، مدیریت خطا را تعمیم دهید.