Pada Maret 2022, kami merilis Bid Manager API versi 2. Mengingat rilis versi baru ini, kami berencana untuk segera mengumumkan tanggal penghentian penggunaan v1.1. Sebaiknya Anda memulai migrasi dari v1.1 ke v2 sesegera mungkin.
Memigrasikan aplikasi Anda
Bermigrasi dari v1.1 ke v2 memerlukan pembaruan URL endpoint untuk memanggil v2, dan memperbarui aplikasi untuk memperhitungkan perubahan yang merusak.
Memperbarui panggilan API dari v1.1 ke v2
Untuk menggunakan v2, bukan v1.1, Anda harus mengupdate permintaan untuk menggunakan endpoint v2 baru.
Mengidentifikasi metode yang setara
Untuk memperbarui panggilan API dari penggunaan v1.1 ke v2, Anda harus mengidentifikasi metode v1.1 yang setara di v2 terlebih dahulu.
Nama semua layanan dan metode berikut telah sedikit berubah antara v1.1 dan v2:
- Layanan
QueriesdanReportsdi v1.1 dikenal sebagaiqueriesdanqueries.reportsdi v2. - Metode telah diganti namanya sebagai berikut di v2:
Nama metode v1.1 Metode v2 yang setara Queries.createqueryqueries.createQueries.deletequeryqueries.deleteQueries.getqueryqueries.getQueries.listqueriesqueries.listQueries.runqueryqueries.runReports.listreportsqueries.reports.list
Perbarui ke endpoint baru
Setelah mengidentifikasi metode yang setara, Anda perlu memperbarui permintaan. Misalnya, untuk memanggil metode queries.getquery dengan v1.1, Anda akan menggunakan
URL berikut:
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
Untuk memanggil metode yang setara di v2, yang dikenal sebagai queries.get, perbarui
URL ke yang berikut:
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
Jika Anda menggunakan library klien untuk membuat permintaan ke API, gunakan library klien versi terbaru dan perbarui konfigurasi Anda untuk menggunakan v2.
Membuat perubahan yang diperlukan
Kami memperkenalkan sejumlah perubahan yang dapat menyebabkan gangguan di v2. Tinjau petunjuk berikut dan lakukan perubahan yang diperlukan yang relevan dengan penggunaan Bid Manager API yang ada.
Memperbarui panggilan ke layanan queries
- Kolom berikut dalam resource
Queryyang awalnya diwakili oleh objek bertingkat umum telah berubah untuk menggunakan jenis objek berikut: - Kolom berikut dalam resource
Queryyang awalnya diwakili oleh objek daftar umum telah diubah menjadi daftar jenis objek baru berikut: - Kolom berikut dalam resource
Query, yang awalnya direpresentasikan oleh string,direpresentasikan oleh jenis enum di v2, dan mencakup perubahan berikut:metadata.dataRangeyang setara dengan v2 kini menggunakan enumRange. Saat dikonversi ke enum ini, nilaiPREVIOUS_HALF_MONTHtelah dihapus dan nilaiTYPE_NOT_SUPPORTEDdiubah menjadiRANGE_UNSPECIFIED.metadata.formatkini menggunakan enumFormat. Dalam mengonversi ke enum ini, nilaiEXCEL_CSVtelah dihapus dan nilaiFORMAT_UNSPECIFIEDtelah ditambahkan.params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchdanparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchsekarang menggunakan enumMatch.params.options.pathQueryOptions.pathFilters[].pathMatchPositionsekarang menggunakan enumPathMatchPosition. Dalam mengonversi ke enum ini, nilaiPATH_MATCH_POSITION_UNSPECIFIEDtelah ditambahkan.schedule.frequencykini menggunakan enumFrequency. Saat mengonversi ke enum ini, nilaiFREQUENCY_UNSPECIFIEDtelah ditambahkan.params.typekini menggunakan enumReportType. Saat mengonversi ke enum ini, perubahan berikut telah dilakukan:- Nilai berikut tidak digunakan lagi:
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
- Nilai yang tersisa telah diperbarui untuk lebih mencerminkan nilai setara di UI:
Nilai v1.1 Nilai ReportTypeyang setaraTYPE_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
- Kolom
metadata.dataRange,reportDataStartTimeMs, danreportDataEndTimeMstelah diganti dengan kolomrange,customStartDate, dancustomEndDate. Kolom tanggal baru menggunakan objekDatedan bukan milidetik sejak Epoch Unix. Kolom pengganti ini telah dipindahkan ke objekDataRangeyang ditetapkan ke kolomdataRangedalam objekQueryMetadata. - Kolom
schedule.startTimeMsdanschedule.endTimeMstelah diganti dengan kolomstartDatedanendDatedalam objekQuerySchedule. Kolom tanggal baru menggunakan objekDatedan bukan milidetik sejak Epoch Unix. - Kolom
metadata.running,metadata.reportCount,metadata.googleCloudStoragePathForLatestReport,metadata.googleDrivePathForLatestReport, danmetadata.latestReportRunTimeMstelah dihapus. Informasi mengenai laporan terbaru yang dihasilkan dari kueri harus diambil menggunakan metodequeries.reports.listdengan parameter kueriorderBy“key.reportId desc” untuk memastikan bahwa permintaan mencantumkan laporan terbaru terlebih dahulu. - Kolom
kind,timezoneCode,metadata.locale,params.includeInviteData, danschedule.nextRunMinuteOfDaytelah dihapus. queries.createtidak lagi otomatis menjalankan kueri setelah pembuatan dan parameter kueriasynchronoustelah dihapus. Panggilqueries.runsetelahqueries.createuntuk membuat laporan untuk kueri baru.- Metode
queries.runtelah diperbarui dengan cara berikut:- Parameter kueri
asynchronoustelah diganti dengan parameter kuerisynchronous. Parameter kueri baru beroperasi dengan logika terbalik dan dianggap salah jika tidak ditentukan. Mengingat hal ini,queries.runmenghasilkan laporan secara asinkron secara default di v2, bukan secara sinkron, yang merupakan default di v1.1. - Isi permintaan telah diperbarui untuk menghapus kolom
timezoneCodedan mengganti kolomdataRange,reportDataStartTimeMs,reportDataEndTimeMsdengan objekDataRangeyang ditetapkan ke kolomdataRange. - Metode ini menampilkan objek
Reportyang dihasilkan, bukan isi respons kosong.
- Parameter kueri
- Kolom
kinddi isi responsqueries.listtelah dihapus.
Memperbarui panggilan ke layanan reports
- Kolom berikut dalam resource
Reportyang awalnya diwakili oleh objek bertingkat umum telah berubah untuk menggunakan jenis objek berikut: - Kolom berikut dalam resource
Reportyang awalnya diwakili oleh objek daftar umum telah diubah menjadi daftar jenis objek baru berikut: - Kolom berikut dalam resource
Reportyang awalnya direpresentasikan oleh string telah berubah sehingga kolom yang setara di v2 direpresentasikan oleh jenis enum baru dan mencakup perubahan pada nilai yang dapat diterima:metadata.status.formatkini menggunakan enumFormat. Saat mengonversi ke enum ini, nilaiEXCEL_CSVtelah dihapus danFORMAT_UNSPECIFIEDtelah ditambahkan.metadata.status.statekini menggunakan enumState. Saat mengonversi ke enum ini, nilaiQUEUEDdanSTATE_UNSPECIFIEDtelah ditambahkan.params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.matchdanparams.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.matchsekarang menggunakan enumMatch.params.options.pathQueryOptions.pathFilters[].pathMatchPositionsekarang menggunakan enumPathMatchPosition. Dalam mengonversi ke enum ini, nilaiPATH_MATCH_POSITION_UNSPECIFIEDtelah ditambahkan.params.typekini menggunakan enumReportType. Dalam mengonversi ke enum ini, banyak perubahan telah dilakukan dan tercantum secara mendetail di bagian sebelumnya terkait panggilan layanan kueri yang diperbarui.
- Kolom
metadata.reportDataStartTimeMsdanmetadata.reportDataEndTimeMstelah diganti dengan kolomreportDataStartDatedanreportDataEndDatedalam objekReportMetadata. Kolom baru menggunakan objekDate, bukan milidetik sejak Epoch Unix. metadata.status.finishTimeMstelah diganti dengan kolomfinishTimedalam objekReportStatus. Kolom waktu baru ini merepresentasikan tanggal dan waktu sebagai stempel waktu dalam format RFC3339 UTC "Zulu", bukan dalam milidetik sejak Epoch Unix.- Kolom
metadata.status.failuredanparams.includeInviteDatatelah dihapus. - Kolom
kinddi isi responsreports.listtelah dihapus.
Memperbarui logika penanganan error
Pesan error di seluruh API telah diperbarui di v2. Pesan error baru ini lebih spesifik dan, dalam beberapa kasus, memberikan informasi tentang nilai dalam permintaan API yang menyebabkan error ditampilkan. Jika logika penanganan error yang ada mengandalkan teks pesan error tertentu, generalisasikan penanganan error Anda sebelum bermigrasi ke v2.