2022 年 3 月に、Bid Manager API のバージョン 2 をリリースしました。この新しいバージョンのリリースに伴い、v1.1 のサポート終了日を近日中に発表する予定です。できるだけ早く v1.1 から v2 への移行を開始することをおすすめします。
アプリケーションの移行
v1.1 から v2 への移行では、v2 を呼び出すようにエンドポイント URL を更新し、破壊的変更に対応するようにアプリケーションを更新する必要があります。
API 呼び出しを v1.1 から v2 に更新する
v1.1 の代わりに v2 を使用するには、新しい v2 エンドポイントを使用するようにリクエストを更新する必要があります。
同等のメソッドを特定する
API 呼び出しを v1.1 から v2 に更新するには、まず v2 で同等の v1.1 メソッドを特定する必要があります。
v1.1 と v2 では、すべてのサービスとメソッドの名前が次のように若干変更されています。
- v1.1 のサービス
QueriesとReportsは、v2 ではqueriesとqueries.reportsになっています。 - v2 では、メソッドの名前が次のように変更されています。
新しいエンドポイントに更新する
同等のメソッドを特定したら、リクエストを更新する必要があります。たとえば、v101.1 で queries.getquery メソッドを呼び出すには、次の URL を使用します。
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
v2 で同等のメソッド(queries.get)を呼び出すには、
URL を次のように更新します。
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
クライアント ライブラリを使用して API にリクエストを行う場合は、クライアント ライブラリの最新バージョンを使用し、v2 を使用するように構成を更新します。
必要な変更を加える
v2 では、多くの破壊的変更が導入されています。以下の手順を確認し、既存の Bid Manager API の使用状況に応じて必要な変更を加えます。
queries サービスへの呼び出しを更新する
Queryリソースの次のフィールドは、元々一般的なネストされたオブジェクトで表されていましたが、次のオブジェクト タイプを使用するように変更されました。Queryリソースの次のフィールドは、元々一般的なリスト オブジェクトで表されていましたが、次の新しいオブジェクト タイプのリストに変更されました。Queryリソースの次のフィールドは、元々文字列で表されていましたが、v2 では enum タイプで表されるようになり、次のような変更が加えられています。metadata.dataRangeに相当する v2 の値は、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はMatchenum を使用するようになりました。params.options.pathQueryOptions.pathFilters[].pathMatchPositionはPathMatchPositionenum を使用するようになりました。この enum への変換では、値PATH_MATCH_POSITION_UNSPECIFIEDが追加されました。schedule.frequencyはFrequencyenum を使用するようになりました。この enum への変換では、値FREQUENCY_UNSPECIFIEDが追加されました。params.typeはReportTypeenum を使用するようになりました。この 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
- 残りの値はすべて、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
- フィールド
metadata.dataRange、reportDataStartTimeMs、reportDataEndTimeMsは、フィールドrange、customStartDate、customEndDateに置き換えられました。新しい日付フィールドでは、Dateオブジェクトではなく、Unix エポックからのミリ秒数が使用されます。これらの置き換えフィールド は、DataRangeオブジェクトのQueryMetadataオブジェクトの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は、v1.1 のデフォルトである同期処理とは異なり、v2 ではデフォルトでレポートを非同期で生成します。- リクエストの本文が更新され、
timezoneCodeフィールドが削除され、dataRange、reportDataStartTimeMs、reportDataEndTimeMsフィールドがDataRangeオブジェクトに割り当てられたdataRangeフィールドに置き換えられました。 - このメソッドは、空のレスポンス本文ではなく、結果の
Reportオブジェクトを返します。
queries.listレスポンス本文 のkindフィールドが削除されました。
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はMatchenum を使用するようになりました。params.options.pathQueryOptions.pathFilters[].pathMatchPositionはPathMatchPositionenum を使用するようになりました。この enum への変換では、値PATH_MATCH_POSITION_UNSPECIFIEDが追加されました。params.typeはReportTypeenum を使用するようになりました。この enum への変換では、多くの変更が加えられました。詳しくは、クエリ サービス呼び出しの更新に関する前のセクションをご覧ください。
- フィールド
metadata.reportDataStartTimeMsとmetadata.reportDataEndTimeMsは、ReportMetadataオブジェクトの フィールドreportDataStartDateとreportDataEndDateに置き換えられました。新しいフィールドでは、Unix エポックからのミリ秒数ではなくDateオブジェクトが使用されます。 metadata.status.finishTimeMsは、finishTimeフィールドがReportStatusオブジェクトに置き換えられました。この新しい時間フィールドは、Unix エポックからのミリ秒数ではなく、RFC3339 UTC Zulu 形式のタイムスタンプとして日時を表します。metadata.status.failureフィールドとparams.includeInviteDataフィールドは削除されました。kindフィールドがreports.listレスポンス本文から 削除されました。
エラー処理ロジックを更新する
API 全体でエラー メッセージが v2 で更新されました。これらの新しいエラー メッセージはより具体的になり、場合によっては、エラーが返される原因となっている API リクエストの値に関する情報が提供されます。既存のエラー処理ロジックが特定のエラー メッセージ テキストに依存している場合は、v2 に移行する前にエラー処理を一般化してください。