במרץ 2022 השקנו את גרסה 2 של Bid Manager API. לאור ההשקה של הגרסה החדשה הזו, אנחנו מתכננים להודיע בקרוב על תאריך סיום התמיכה בגרסה v1.1. מומלץ להתחיל את המיגרציה מגרסה 1.1 לגרסה 2 בהקדם האפשרי.
העברת האפליקציה
כדי לבצע מיגרציה מגרסה v1.1 לגרסה v2, צריך לעדכן את כתובות ה-URL של נקודות הקצה כדי לקרוא לגרסה v2, ולעדכן את האפליקציה כדי להתאים אותה לשינויים שעלולים לשבור את התאימות לאחור.
עדכון קריאות ה-API מגרסה 1.1 לגרסה 2
כדי להשתמש בגרסה v2 במקום בגרסה v1.1, צריך לעדכן את הבקשות כך שישתמשו בנקודות קצה חדשות של v2.
זיהוי שיטות שוות ערך
כדי לעדכן את הקריאות ל-API מגרסה v1.1 לגרסה v2, קודם צריך לזהות את השיטות המקבילות בגרסה v1.1 בגרסה v2.
השמות הבאים של כל השירותים והשיטות השתנו מעט בין גרסה 1.1 לגרסה 2:
- השירותים
Queriesו-Reportsבגרסה 1.1 נקראיםqueriesו-queries.reportsבגרסה 2. - השמות של ה-methods בגרסה 2 השתנו באופן הבא:
עדכון לנקודות קצה חדשות
אחרי שמזהים שיטות שוות ערך, צריך לעדכן את הבקשות. לדוגמה, כדי להפעיל את השיטה 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
אם אתם משתמשים בספריית לקוח כדי לשלוח בקשות ל-API, אתם צריכים להשתמש בגרסה העדכנית ביותר של ספריית הלקוח ולעדכן את ההגדרה כך שתשתמש בגרסה 2.
ביצוע השינויים הנדרשים
אנחנו משיקים מספר שינויים משמעותיים בגרסה 2. כדאי לעיין בהוראות הבאות ולבצע את השינויים הנדרשים בהתאם לשימוש הקיים שלכם ב-Bid Manager API.
עדכון השיחות לשירות queries
- השדות הבאים במשאב
Query, שיוצגו במקור על ידי אובייקטים מוכללים כלליים, השתנו כך שהם משתמשים בסוגי האובייקטים הבאים: - השדות הבאים במשאב
Query, שיוצגו במקור על ידי אובייקטים של רשימה כללית, השתנו והפכו לרשימות של סוגי האובייקטים החדשים הבאים: - השדות הבאים במשאב
Query, שיוצגו במקור כמחרוזות,מיוצגים על ידי סוגי enum בגרסה 2, וכוללים את השינויים הבאים:- המקבילה של
metadata.dataRangeבגרסה 2 משתמשת עכשיו ב-enumRange. בתהליך ההמרה לסוג הנתונים הזה, הערךPREVIOUS_HALF_MONTHהוסר והערךTYPE_NOT_SUPPORTEDשונה ל-RANGE_UNSPECIFIED. -
metadata.formatמשתמש עכשיו ב-enumFormat. בתהליך ההמרה לסוג ה-enum הזה, הערךEXCEL_CSVהוסר והערךFORMAT_UNSPECIFIEDנוסף. -
params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchו-params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchמשתמשים עכשיו ב-enumMatch. - האפליקציה
params.options.pathQueryOptions.pathFilters[].pathMatchPositionמשתמשת עכשיו בטיפוסPathMatchPosition. במהלך ההמרה ל-enum הזה, הערךPATH_MATCH_POSITION_UNSPECIFIEDנוסף. -
schedule.frequencyמשתמש עכשיו ב-enumFrequency. במהלך ההמרה לסוג ה-enum הזה, הערךFREQUENCY_UNSPECIFIEDנוסף. -
params.typeמשתמש עכשיו ב-enumReportType. במהלך ההמרה לסוג ה-enum הזה, בוצעו השינויים הבאים: - הערכים הבאים הוצאו משימוש:
TYPE_ACTIVE_GRPTYPE_AUDIENCE_PERFORMANCETYPE_CLIENT_SAFETYPE_COMSCORE_VCETYPE_CROSS_FEETYPE_CROSS_PARTNERTYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDERTYPE_ESTIMATED_CONVERSIONTYPE_FEETYPE_KEYWORDTYPE_LINEAR_TV_SEARCH_LIFTTYPE_NIELSEN_AUDIENCE_PROFILETYPE_NIELSEN_DAILY_REACH_BUILDTYPE_NIELSEN_ONLINE_GLOBAL_MARKETTYPE_PAGE_CATEGORYTYPE_PETRA_NIELSEN_DAILY_REACH_BUILDTYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKETTYPE_PIXEL_LOADTYPE_THIRD_PARTY_DATA_PROVIDERTYPE_TRUEVIEW_IARTYPE_VERIFICATIONTYPE_YOUTUBE_VERTICAL
- הערכים הנותרים עודכנו כדי לשקף טוב יותר את הערכים המקבילים שלהם בממשק המשתמש:
ערכים של גרסה 1.1 ערך מקביל של ReportTypeTYPE_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
- המקבילה של
- השדות
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עם פרמטר השאילתהorderByשל 'key.reportId desc' כדי להבטיח שהבקשה תציג את הדוחות האחרונים קודם. - השדות
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, שיוצגו במקור על ידי מחרוזות, השתנו כך שהשדות המקבילים להם בגרסה 2 יוצגו על ידי סוגי enum חדשים, ויכללו שינויים בערכים הקבילים:-
metadata.status.formatמשתמש עכשיו ב-enumFormat. במהלך ההמרה ל-enum הזה, הערךEXCEL_CSVהוסר והערךFORMAT_UNSPECIFIEDנוסף. -
metadata.status.stateמשתמש עכשיו ב-enumState. במהלך ההמרה לסוג ה-enum הזה, הערכיםQUEUEDו-STATE_UNSPECIFIEDנוספו. -
params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchו-params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchמשתמשים עכשיו ב-enumMatch. - האפליקציה
params.options.pathQueryOptions.pathFilters[].pathMatchPositionמשתמשת עכשיו בטיפוסPathMatchPosition. במהלך ההמרה ל-enum הזה, הערךPATH_MATCH_POSITION_UNSPECIFIEDנוסף. -
params.typeמשתמש עכשיו ב-enumReportType. במהלך ההמרה ל-enum הזה, בוצעו שינויים רבים שמפורטים בקטע הקודם בנושא עדכון קריאות לשירות של שאילתות.
-
- השדות
metadata.reportDataStartTimeMsו-metadata.reportDataEndTimeMsהוחלפו בשדותreportDataStartDateו-reportDataEndDateבאובייקטReportMetadata. השדות החדשים משתמשים באובייקטיםDateבמקום באלפיות השנייה מאז תקופת Unix. - השדה
metadata.status.finishTimeMsהוחלף בשדהfinishTimeבאובייקטReportStatus. שדה הזמן החדש הזה מייצג את התאריך והשעה כחותמת זמן בפורמט RFC3339 UTC 'Zulu', במקום במילי-שניות מאז ראשית זמן יוניקס (Unix epoch). - השדות
metadata.status.failureו-params.includeInviteDataהוסרו. - השדה
kindבגוף התגובהreports.listהוסר.
עדכון הלוגיקה של הטיפול בשגיאות
עדכנו את הודעות השגיאה בגרסה 2 של ה-API. הודעות השגיאה החדשות האלה ספציפיות יותר, ובחלק מהמקרים הן מספקות מידע על הערכים בבקשת ה-API שגורמים להחזרת השגיאה. אם הלוגיקה הקיימת לטיפול בשגיאות מסתמכת על טקסט ספציפי של הודעת שגיאה, צריך להכליל את הטיפול בשגיאות לפני המעבר לגרסה 2.