我們在 2022 年 3 月推出了 Bid Manager API 第 2 版。由於新版已發布,我們計畫在近期宣布 v1.1 版的淘汰日期。建議您盡快開始從 1.1 版遷移至第 2 版。
遷移應用程式
如要從 v1.1 遷移至 v2,您必須更新端點網址來呼叫 v2,並更新應用程式以因應重大變更。
將 API 呼叫從 v1.1 更新至 v2
如要使用第 2 版而非第 1.1 版,請更新要求,改用新的第 2 版端點。
找出等效方法
如要將 API 呼叫從 v1.1 更新至 v2,您必須先找出 v2 中對應的 v1.1 方法。
在 v1.1 和 v2 之間,所有服務和方法名稱都略有變更,如下所示:
- v1.1 中的服務
Queries和Reports在 v2 中稱為queries和queries.reports。 - 在第 2 版中,方法已重新命名如下:
更新為新端點
找出對等方法後,請更新要求。舉例來說,如要使用 v1.1 呼叫 queries.getquery 方法,請使用下列網址:
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
如要呼叫 v2 中的對等方法 (稱為 queries.get),請將網址更新為下列內容:
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
如果您使用用戶端程式庫向 API 發出要求,請使用最新版的用戶端程式庫,並更新設定以使用 v2。
進行必要變更
我們將在第 2 版中推出多項重大變更,請詳閱下列操作說明,並根據您目前使用 Bid Manager API 的情形,進行必要的變更。
更新對 queries 服務的呼叫
Query資源中原本以一般巢狀物件表示的下列欄位,已改用下列物件型別:Query資源中原本以一般清單物件表示的下列欄位,已變更為下列新物件類型的清單:Query資源中的下列欄位原本是以字串表示,在第 2 版中則是以列舉類型表示,包括下列變更:metadata.dataRange的 v2 等效函式現在使用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_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
- 其餘值皆已更新,可更準確反映 UI 中的等值:
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 紀元以來的毫秒數。這些替代欄位已移至QueryMetadata物件中,指派給dataRange欄位的DataRange物件。 schedule.startTimeMs和schedule.endTimeMs欄位已由QuerySchedule物件中的startDate和endDate欄位取代。新的日期欄位會使用Date物件,而非 Unix 紀元以來的毫秒數。- 已移除
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.create之後呼叫queries.run,為新查詢產生報表。queries.run方法已更新,更新內容如下:asynchronous查詢參數已由synchronous查詢參數取代。新的查詢參數會以反向邏輯運作,如果未指定,則視為 false。因此,queries.run預設會在 v2 中以非同步方式產生報表,而非 v1.1 中的同步方式。- 要求主體已更新,移除了
timezoneCode欄位,並將dataRange、reportDataStartTimeMs、reportDataEndTimeMs欄位替換為指派給dataRange欄位的DataRange物件。 - 這個方法會傳回產生的
Report物件,而非空白的回應本文。
- 已移除
queries.list回應主體中的kind欄位。
更新對 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欄位已由ReportMetadata物件中的reportDataStartDate和reportDataEndDate欄位取代。新欄位會使用Date物件,而非 Unix 紀元以來的毫秒數。metadata.status.finishTimeMs已由ReportStatus物件中的finishTime欄位取代。這個新時間欄位會以 RFC3339 世界標準時間「Zulu」格式的時間戳記表示日期時間,而非以自 Unix 紀元開始至今經過的毫秒數表示。- 已移除
metadata.status.failure和params.includeInviteData欄位。 reports.list回應主體中的kind欄位已移除。
更新錯誤處理邏輯
第 2 版的 API 錯誤訊息已更新。這些新錯誤訊息更具體,有時還會提供 API 要求中導致傳回錯誤的值相關資訊。如果現有的錯誤處理邏輯依賴特定錯誤訊息文字,請先將錯誤處理邏輯一般化,再遷移至 v2。