बिड मैनेजर एपीआई के 1.1 वर्शन से वर्शन 2 पर माइग्रेट करना

मार्च 2022 में, हमने बिड मैनेजर एपीआई का वर्शन 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 के बीच थोड़ा बदल गए हैं:

नए एंडपॉइंट पर अपडेट करें

मिलते-जुलते तरीकों की पहचान करने के बाद, आपको अपने अनुरोधों को अपडेट करना होगा. उदाहरण के लिए, queries.getquery तरीके को v1.1 के साथ कॉल करने के लिए, आपको इस यूआरएल का इस्तेमाल करना होगा:

https://www.googleapis.com/doubleclickbidmanager/v1.1/query/queryId

वर्शन 2 में, queries.get नाम से मिलते-जुलते तरीके को कॉल करने के लिए, यूआरएल को इनमें से किसी एक तरीके से अपडेट करें:

GET https://doubleclickbidmanager.googleapis.com/v2/queries/queryId

अगर एपीआई को अनुरोध करने के लिए क्लाइंट लाइब्रेरी का इस्तेमाल किया जा रहा है, तो क्लाइंट लाइब्रेरी के सबसे हाल के वर्शन का इस्तेमाल करें और v2 का इस्तेमाल करने के लिए अपना कॉन्फ़िगरेशन अपडेट करें.

ज़रूरी बदलाव करें

हम v2 में कई नुकसान पहुंचा सकने वाले बदलाव पेश कर रहे हैं. नीचे दिए गए निर्देशों की समीक्षा करें और बिड मैनेजर एपीआई के मौजूदा इस्तेमाल से जुड़े ज़रूरी बदलाव करें.

queries सेवा के लिए कॉल अपडेट करें

  • Query संसाधन के नीचे दिए गए फ़ील्ड, मूल रूप से सामान्य नेस्ट किए गए ऑब्जेक्ट के ज़रिए दिखाए जाते हैं. इनमें अब इन ऑब्जेक्ट टाइप का इस्तेमाल किया गया है:
    v1.1 फ़ील्डसमतुल्य v2 ऑब्जेक्ट टाइप
    metadata QueryMetadata
    params Parameters
    params.options Options
    params.options.pathQueryOptions PathQueryOptions
    params.options.pathQueryOptions.channelGrouping ChannelGrouping
    params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter PathQueryOptionsFilter
    params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter PathQueryOptionsFilter
    schedule QuerySchedule
  • Query रिसॉर्स में मौजूद ये फ़ील्ड, मूल रूप से सामान्य सूची वाले ऑब्जेक्ट के ज़रिए दिखाए जाते हैं. अब ये फ़ील्ड, नीचे दिए गए नए ऑब्जेक्ट टाइप की सूची बन गए हैं:
    v1.1 सूची फ़ील्डv2 ऑब्जेक्ट टाइप
    params.filters[] FilterPair
    params.options.pathQueryOptions.channelGrouping.rules[] Rule
    params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[] DisjunctiveMatchStatement
    params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[] EventFilter
    params.options.pathQueryOptions.pathFilters[] PathFilter
    params.options.pathQueryOptions.pathFilters[].eventFilters[] EventFilter
  • Query रिसॉर्स के ये फ़ील्ड, मूल रूप से स्ट्रिंग से दिखाए जाते हैं. इन्हें v2 में एनम टाइप के तौर पर दिखाया जाता है. इनमें ये बदलाव शामिल होते हैं:
    • metadata.dataRange के जैसा v2 वर्शन अब Rangeenum का इस्तेमाल करता है. इस एनम में बदलने पर, वैल्यू PREVIOUS_HALF_MONTH को हटा दिया गया है और वैल्यू TYPE_NOT_SUPPORTED को बदलकर RANGE_UNSPECIFIED कर दिया गया है.
    • metadata.format अब Format Enum का इस्तेमाल करता है. इस ईनम में बदलने के लिए, EXCEL_CSV वैल्यू को हटा दिया गया है और वैल्यू FORMAT_UNSPECIFIED को जोड़ दिया गया है.
    • params.options.pathQueryOptions.channelGrouping.rules[].disjunctiveMatchStatements[].eventFilters[].dimensionFilter.match और params.options.pathQueryOptions.pathFilters[].eventFilters[].dimensionFilter.match अब Match Enum का इस्तेमाल करें.
    • params.options.pathQueryOptions.pathFilters[].pathMatchPosition अब PathMatchPosition Enum का इस्तेमाल करता है. इस Enum में बदलने पर, PATH_MATCH_POSITION_UNSPECIFIED वैल्यू जोड़ी गई.
    • schedule.frequency अब Frequency Enum का इस्तेमाल करता है. इस Enum में बदलने के दौरान, FREQUENCY_UNSPECIFIED वैल्यू जोड़ी गई है.
    • params.type अब ReportType Enum का इस्तेमाल करता है. इस ईनम में बदलने के दौरान, ये बदलाव किए गए हैं:
    • ये वैल्यू अब काम नहीं करतीं:
      • TYPE_ACTIVE_GRP
      • TYPE_AUDIENCE_PERFORMANCE
      • TYPE_CLIENT_SAFE
      • TYPE_COMSCORE_VCE
      • TYPE_CROSS_FEE
      • TYPE_CROSS_PARTNER
      • TYPE_CROSS_PARTNER_THIRD_PARTY_DATA_PROVIDER
      • TYPE_ESTIMATED_CONVERSION
      • TYPE_FEE
      • TYPE_KEYWORD
      • TYPE_LINEAR_TV_SEARCH_LIFT
      • TYPE_NIELSEN_AUDIENCE_PROFILE
      • TYPE_NIELSEN_DAILY_REACH_BUILD
      • TYPE_NIELSEN_ONLINE_GLOBAL_MARKET
      • TYPE_PAGE_CATEGORY
      • TYPE_PETRA_NIELSEN_DAILY_REACH_BUILD
      • TYPE_PETRA_NIELSEN_ONLINE_GLOBAL_MARKET
      • TYPE_PIXEL_LOAD
      • TYPE_THIRD_PARTY_DATA_PROVIDER
      • TYPE_TRUEVIEW_IAR
      • TYPE_VERIFICATION
      • TYPE_YOUTUBE_VERTICAL
    • बाकी सभी वैल्यू को अपडेट किया गया है, ताकि यूज़र इंटरफ़ेस (यूआई) में उनकी मिलती-जुलती वैल्यू बेहतर तरीके से दिख सकें:
      v1.1 वैल्यूReportType की बराबर वैल्यू
      TYPE_NOT_SUPPORTED REPORT_TYPE_UNSPECIFIED
      TYPE_GENERAL STANDARD
      TYPE_INVENTORY_AVAILABILITY INVENTORY_AVAILABILITY
      TYPE_AUDIENCE_COMPOSITION AUDIENCE_COMPOSITION
      TYPE_ORDER_ID FLOODLIGHT
      TYPE_TRUEVIEW YOUTUBE
      TYPE_NIELSEN_SITE GRP
      TYPE_PETRA_NIELSEN_AUDIENCE_PROFILE YOUTUBE_PROGRAMMATIC_GUARANTEED
      TYPE_REACH_AND_FREQUENCY REACH
      TYPE_REACH_AUDIENCE UNIQUE_REACH_AUDIENCE
      TYPE_PATH FULL_PATH
      TYPE_PATH_ATTRIBUTION PATH_ATTRIBUTION
  • फ़ील्ड metadata.dataRange, reportDataStartTimeMs, और reportDataEndTimeMs को फ़ील्ड range, customStartDate, और customEndDate से बदल दिया गया है. तारीख के नए फ़ील्ड, Unix Epoch के बाद के मिलीसेकंड के बजाय, Date ऑब्जेक्ट का इस्तेमाल करते हैं. ये बदले गए फ़ील्ड QueryMetadata ऑब्जेक्ट के dataRange फ़ील्ड को असाइन किए गए DataRange ऑब्जेक्ट में ले जाए गए हैं.
  • फ़ील्ड schedule.startTimeMs और schedule.endTimeMs को QuerySchedule ऑब्जेक्ट में startDate और endDate के फ़ील्ड से बदल दिया गया है. तारीख के नए फ़ील्ड, Unix Epoch के बाद के मिलीसेकंड के बजाय, Date ऑब्जेक्ट का इस्तेमाल करते हैं.
  • फ़ील्ड metadata.running, metadata.reportCount, metadata.googleCloudStoragePathForLatestReport, metadata.googleDrivePathForLatestReport, और metadata.latestReportRunTimeMs हटा दिए गए हैं. किसी क्वेरी की हाल ही में जनरेट की गई रिपोर्ट से संबंधित जानकारी queries.reports.list तरीके का इस्तेमाल करके orderBy क्वेरी पैरामीटर का इस्तेमाल करके फिर से हासिल की जानी चाहिए, जो सबसे पहले अनुरोध की गई
  • फ़ील्ड kind, timezoneCode, metadata.locale, params.includeInviteData, और schedule.nextRunMinuteOfDay हटा दिए गए हैं.
  • queries.create प्रॉपर्टी बनाने के बाद, अब अपने-आप क्वेरी नहीं चलाता और asynchronous क्वेरी पैरामीटर को हटा दिया जाता है. नई क्वेरी की रिपोर्ट जनरेट करने के लिए, queries.create के बाद queries.run को कॉल करें.
  • queries.run तरीके को इन तरीकों से अपडेट किया गया है:
    • asynchronous क्वेरी पैरामीटर को synchronous क्वेरी पैरामीटर से बदल दिया गया है. नया क्वेरी पैरामीटर इनवर्स लॉजिक के साथ काम करता है. अगर इसके बारे में नहीं बताया गया है, तो इसे 'गलत' माना जाता है. इसे देखते हुए, queries.run सिंक्रोनस के बजाय, डिफ़ॉल्ट रूप से एसिंक्रोनस रूप से रिपोर्ट जनरेट करता है. यह वर्शन 1.1 में डिफ़ॉल्ट तौर पर उपलब्ध है.
    • timezoneCode फ़ील्ड को हटाने और dataRange, reportDataStartTimeMs, reportDataEndTimeMs फ़ील्ड को dataRange फ़ील्ड को असाइन किए गए DataRange ऑब्जेक्ट से बदलने के लिए, अनुरोध के मुख्य हिस्से को अपडेट किया गया है.
    • यह तरीका, रिस्पॉन्स के खाली हिस्से के बजाय, Report ऑब्जेक्ट दिखाता है.
  • queries.list जवाब के मुख्य भाग में मौजूद kind फ़ील्ड को हटा दिया गया है.

reports सेवा के लिए कॉल अपडेट करें

गड़बड़ी मैनेज करने के लॉजिक को अपडेट करें

एपीआई के गड़बड़ी वाले मैसेज, v2 में अपडेट कर दिए गए हैं. ये नए गड़बड़ी के मैसेज ज़्यादा खास होते हैं और कुछ मामलों में, एपीआई अनुरोध में उन वैल्यू की जानकारी देते हैं जिनकी वजह से गड़बड़ी होती है. अगर गड़बड़ी को मैनेज करने वाला आपका मौजूदा लॉजिक, गड़बड़ी के किसी खास मैसेज के टेक्स्ट पर निर्भर करता है, तो v2 पर माइग्रेट करने से पहले, गड़बड़ी को मैनेज करने से जुड़ी अपनी मौजूदा प्रोसेस को सामान्य बनाएं.