हमने मार्च 2022 में, Bid Manager API का वर्शन 2 रिलीज़ किया था. इस नए वर्शन के रिलीज़ होने के बाद, हम जल्द ही v1.1 के बंद होने की तारीख का एलान करेंगे. हमारा सुझाव है कि आप जल्द से जल्द v1.1 से v2 पर माइग्रेट करें.
अपना ऐप्लिकेशन माइग्रेट करना
v1.1 से v2 पर माइग्रेट करने के लिए, आपको v2 को कॉल करने के लिए अपने एंडपॉइंट यूआरएल अपडेट करने होंगे. साथ ही, आपको अपने ऐप्लिकेशन को अपडेट करना होगा, ताकि वह बड़े बदलावों को ध्यान में रख सके.
एपीआई कॉल को v1.1 से v2 पर अपडेट करें
v1.1 के बजाय v2 का इस्तेमाल करने के लिए, आपको अपने अनुरोधों को नए v2 एंडपॉइंट का इस्तेमाल करने के लिए अपडेट करना होगा.
एक जैसी समस्याओं को हल करने के लिए इस्तेमाल की जाने वाली अलग-अलग विधियों की पहचान करना
एपीआई कॉल को v1.1 से v2 पर अपडेट करने के लिए, आपको सबसे पहले v2 में v1.1 के बराबर के तरीकों की पहचान करनी होगी.
v1.1 और v2 के बीच, सभी सेवाओं और तरीकों के इन नामों में थोड़ा बदलाव किया गया है:
- v1.1 में मौजूद
QueriesऔरReportsसेवाओं को v2 मेंqueriesऔरqueries.reportsके नाम से जाना जाता है. - v2 में, तरीकों के नाम इस तरह बदले गए हैं:
v1.1 के लिए तरीके का नाम Equivalent v2 method Queries.createqueryqueries.createQueries.deletequeryqueries.deleteQueries.getqueryqueries.getQueries.listqueriesqueries.listQueries.runqueryqueries.runReports.listreportsqueries.reports.list
नए एंडपॉइंट पर अपडेट करना
मिलते-जुलते तरीकों की पहचान करने के बाद, आपको अपने अनुरोधों को अपडेट करना होगा. उदाहरण के लिए, v1.1 के साथ queries.getquery तरीके को कॉल करने के लिए, आपको इस यूआरएल का इस्तेमाल करना होगा:
https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId
v2 में इसी तरह के तरीके को कॉल करने के लिए, जिसे queries.get कहा जाता है, यूआरएल को इस तरह अपडेट करें:
GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId
अगर एपीआई से अनुरोध करने के लिए क्लाइंट लाइब्रेरी का इस्तेमाल किया जा रहा है, तो क्लाइंट लाइब्रेरी के सबसे नए वर्शन का इस्तेमाल करें. साथ ही, v2 का इस्तेमाल करने के लिए अपने कॉन्फ़िगरेशन को अपडेट करें.
ज़रूरी बदलाव करना
हम v2 में कई ऐसे बदलाव कर रहे हैं जिनसे मौजूदा सिस्टम पर असर पड़ सकता है. यहां दिए गए निर्देशों को पढ़ें और Bid Manager API के मौजूदा इस्तेमाल से जुड़े ज़रूरी बदलाव करें.
queries सेवा पर किए गए कॉल अपडेट करें
Queryरिसॉर्स में, सामान्य नेस्ट किए गए ऑब्जेक्ट के तौर पर दिखाए गए इन फ़ील्ड को अब इन ऑब्जेक्ट टाइप का इस्तेमाल करने के लिए बदल दिया गया है:v1.1 फ़ील्ड v2 ऑब्जेक्ट टाइप के बराबर metadataQueryMetadataparamsParametersparams.optionsOptionsparams.options.pathQueryOptionsहटाया गया params.options.pathQueryOptions.channelGroupingहटाया गया params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilterहटाया गया params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilterहटाया गया scheduleQueryScheduleQueryसंसाधन में मौजूद इन फ़ील्ड को, सामान्य सूची वाले ऑब्जेक्ट के तौर पर दिखाया जाता था. अब इन्हें इन नए ऑब्जेक्ट टाइप की सूचियों के तौर पर दिखाया जाएगा:सूची वाले फ़ील्ड का वर्शन 1.1 v2 ऑब्जेक्ट टाइप params.filters[]FilterPairparams.options.pathQueryOptions.channelGrouping.rules[]हटाया गया params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[]हटाया गया params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[]हटाया गया params.options.pathQueryOptions.pathFilters[]हटाया गया params.options.pathQueryOptions.pathFilters[].eventFilters[]हटाया गया 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
- बची हुई सभी वैल्यू को अपडेट कर दिया गया है, ताकि यूज़र इंटरफ़ेस (यूआई) में उनकी वैल्यू बेहतर तरीके से दिखें:
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फ़ील्ड से बदल दिया गया है. नए तारीख वाले फ़ील्ड, Unix Epoch के बाद से मिलीसेकंड के बजायDateऑब्जेक्ट का इस्तेमाल करते हैं. बदले गए इन फ़ील्ड को,DataRangeऑब्जेक्ट में ले जाया गया है. यह ऑब्जेक्ट,QueryMetadataऑब्जेक्ट में मौजूदdataRangeफ़ील्ड को असाइन किया गया है.QueryScheduleऑब्जेक्ट में, फ़ील्डschedule.startTimeMsऔरschedule.endTimeMsको फ़ील्डstartDateऔरendDateसे बदल दिया गया है. नए तारीख वाले फ़ील्ड, Unix Epoch के बाद से मिलीसेकंड के बजायDateऑब्जेक्ट का इस्तेमाल करते हैं.metadata.running,metadata.reportCount,metadata.googleCloudStoragePathForLatestReport,metadata.googleDrivePathForLatestReport, औरmetadata.latestReportRunTimeMsफ़ील्ड हटा दिए गए हैं. क्वेरी की सबसे हाल ही में जनरेट की गई रिपोर्ट की जानकारी पाने के लिए,queries.reports.listतरीके का इस्तेमाल करना चाहिए. साथ ही, “key.reportId desc” केorderByक्वेरी पैरामीटर का इस्तेमाल करना चाहिए. इससे यह पक्का किया जा सकेगा कि अनुरोध में सबसे हाल की रिपोर्ट सबसे ऊपर दिखें.kind,timezoneCode,metadata.locale,params.includeInviteData, औरschedule.nextRunMinuteOfDayफ़ील्ड हटा दिए गए हैं.queries.createअब क्वेरी बनाने के बाद, अपने-आप क्वेरी नहीं चलाता. साथ ही,asynchronousक्वेरी पैरामीटर को हटा दिया गया है. नई क्वेरी के लिए रिपोर्ट जनरेट करने के लिए,queries.createके बादqueries.runको कॉल करें.queries.runतरीके को इन तरीकों से अपडेट किया गया है:asynchronousक्वेरी पैरामीटर कोsynchronousक्वेरी पैरामीटर से बदल दिया गया है. नया क्वेरी पैरामीटर, उल्टे लॉजिक के साथ काम करता है. अगर इसे तय नहीं किया जाता है, तो इसे गलत माना जाता है. इसलिए,queries.run, v2 में डिफ़ॉल्ट रूप से रिपोर्ट को एसिंक्रोनस तरीके से जनरेट करता है. वहीं, v1.1 में रिपोर्ट को सिंक्रोनस तरीके से जनरेट किया जाता है.- अनुरोध के मुख्य हिस्से को अपडेट किया गया है. इसमें
timezoneCodeफ़ील्ड को हटा दिया गया है. साथ ही,dataRange,reportDataStartTimeMs, औरreportDataEndTimeMsफ़ील्ड कोdataRangeफ़ील्ड को असाइन किए गएDataRangeऑब्जेक्ट से बदल दिया गया है. - यह तरीका, खाली रिस्पॉन्स बॉडी के बजाय, नतीजे के तौर पर मिले
Reportऑब्जेक्ट को दिखाता है.
queries.listरिस्पॉन्स बॉडी में मौजूदkindफ़ील्ड को हटा दिया गया है.
reports सेवा पर किए गए कॉल अपडेट करें
Reportसंसाधन में मौजूद इन फ़ील्ड को, मूल रूप से सामान्य नेस्ट किए गए ऑब्जेक्ट के तौर पर दिखाया गया था. अब इनमें इन ऑब्जेक्ट टाइप का इस्तेमाल किया जाता है:Reportसंसाधन में, सामान्य सूची ऑब्जेक्ट के तौर पर दिखाए गए इन फ़ील्ड को अब नए ऑब्जेक्ट टाइप की सूचियों के तौर पर दिखाया जाएगा:सूची वाले फ़ील्ड का वर्शन 1.1 v2 ऑब्जेक्ट टाइप params.filters[]FilterPairparams.options.pathQueryOptions.channelGrouping.rules[]हटाया गया params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[]हटाया गया params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[]हटाया गया params.options.pathQueryOptions.pathFilters[]हटाया गया params.options.pathQueryOptions.pathFilters[].eventFilters[]हटाया गया 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 में बदलने के दौरान, कई बदलाव किए गए हैं. इनके बारे में, क्वेरी सेवा कॉल को अपडेट करने से जुड़े पिछले सेक्शन में पूरी जानकारी दी गई है.
ReportMetadataऑब्जेक्ट में,metadata.reportDataStartTimeMsऔरmetadata.reportDataEndTimeMsफ़ील्ड की जगहreportDataStartDateऔरreportDataEndDateफ़ील्ड जोड़ दिए गए हैं. नए फ़ील्ड, Unix Epoch के बाद के मिलीसेकंड के बजायDateऑब्जेक्ट का इस्तेमाल करते हैं.metadata.status.finishTimeMsकोReportStatusऑब्जेक्ट में मौजूदfinishTimeफ़ील्ड से बदल दिया गया है. यह नया टाइम फ़ील्ड, तारीख और समय को यूनिक्स इपॉक के बाद से मिलीसेकंड में दिखाने के बजाय, आरएफ़सी3339 यूटीसी "Zulu" फ़ॉर्मैट में टाइमस्टैंप के तौर पर दिखाता है.metadata.status.failureऔरparams.includeInviteDataफ़ील्ड हटा दिए गए हैं.reports.listरिस्पॉन्स बॉडी में मौजूदkindफ़ील्ड को हटा दिया गया है.
गड़बड़ी की जानकारी मैनेज करने के लॉजिक को अपडेट करना
एपीआई के सभी गड़बड़ी के मैसेज को v2 में अपडेट कर दिया गया है. ये नए गड़बड़ी के मैसेज ज़्यादा सटीक हैं. साथ ही, कुछ मामलों में ये एपीआई अनुरोध में मौजूद उन वैल्यू के बारे में जानकारी देते हैं जिनकी वजह से गड़बड़ी हुई है. अगर गड़बड़ी को ठीक करने के लिए इस्तेमाल किया जा रहा मौजूदा लॉजिक, गड़बड़ी के मैसेज के किसी खास टेक्स्ट पर निर्भर करता है, तो v2 पर माइग्रेट करने से पहले, गड़बड़ी को ठीक करने के लिए इस्तेमाल किए जा रहे लॉजिक को सामान्य बनाएं.