क्षेत्र के हिसाब से कीमत तय करने की सुविधा को माइग्रेट करना
इस गाइड में, इंटिग्रेशन को RegionsService in
Content API for Shopping से Accounts sub-API में मौजूद RegionsService पर माइग्रेट करने का तरीका बताया गया है.
रीजन सेवा की मदद से, अपनी पसंद के मुताबिक भौगोलिक क्षेत्र तय किए जा सकते हैं. इनका इस्तेमाल, क्षेत्रीय कीमत और शिपिंग की जानकारी में बदलाव करने जैसे मामलों में किया जा सकता है. RegionalInventory और ShippingSettings जैसी सेवाओं के साथ क्षेत्रों का इस्तेमाल किया जा सकता है.
मुख्य अंतर
- एपीआई का स्ट्रक्चर: Regions सेवा अब Merchant API के Accountsसब-एपीआई का हिस्सा है. उदाहरण के लिए,merchantapi.googleapis.com/accounts/v1/....
- संसाधन के नाम: Merchant API, Get, Update, और Delete कार्रवाइयों के लिए यूआरएल पाथ में अलग-अलग merchant_idऔरregion_idपैरामीटर के बजाय, संसाधन के नामों (accounts/{account}/regions/{region}) का इस्तेमाल करता है.
- एआईपी का पालन करना: Merchant API के तरीके, एपीआई को बेहतर बनाने के सुझाव के स्टैंडर्ड पैटर्न का पालन करते हैं. जैसे, List/Create के लिए parent, Get/Delete के लिएname, और स्टैंडर्डupdate_maskका इस्तेमाल करना.
- रैपर टाइप: Content API में, पहले google.protobuf.StringValueयाgoogle.protobuf.BoolValueका इस्तेमाल करने वाले फ़ील्ड अब Merchant API में स्टैंडर्डoptionalफ़ील्ड का इस्तेमाल करते हैं.
- नई सुविधाएं:
- Merchant API, Regionरिसॉर्स मेंRadiusAreaटाइप पेश करता है. इससे किसी पॉइंट के आस-पास के दायरे के हिसाब से क्षेत्रों को तय किया जा सकता है. शुरुआत में, यहTRUST_TESTERके तौर पर उपलब्ध होगा.
- बैच के तरीके - BatchCreateRegions,BatchUpdateRegions,BatchDeleteRegions- उपलब्ध हैं.
 
- Merchant API, 
- गड़बड़ी ठीक करना: गड़बड़ी के कोड और मैसेज से, ज़्यादा सटीक जानकारी मिलती है.
अनुरोध
अनुरोध के पैटर्न में इस तरह बदलाव होता है:
| Item | Content API for Shopping | Merchant API | ब्यौरा | 
|---|---|---|---|
| एंडपॉइंट | https://shoppingcontent.googleapis.com | https://merchantapi.googleapis.com | बेस डोमेन बदल जाता है. | 
| Path ऐक्सेस करना | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | Merchant API, accountsसब-एपीआई औरnameसंसाधन का इस्तेमाल करता है. | 
| सूची का पाथ | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | Merchant API, खाते के बारे में बताने के लिए parentका इस्तेमाल करता है. | 
| पाथ बनाएं | /content/v2.1/{merchant_id}/regions | /accounts/v1/{parent=accounts/*}/regions | Merchant API, parentका इस्तेमाल करता है.region_id, अनुरोध के मुख्य भाग में मौजूद एक फ़ील्ड है. | 
| पाथ अपडेट करें | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | Merchant API में संसाधन का नाम, बॉडी में मौजूद regionऑब्जेक्ट का हिस्सा होता है. | 
| पाथ मिटाएं | /content/v2.1/{merchant_id}/regions/{region_id} | /accounts/v1/{name=accounts/*/regions/*} | संसाधन nameका इस्तेमाल करता है. | 
आइडेंटिफ़ायर
आइडेंटिफ़ायर के इस्तेमाल में इस तरह बदलाव करें:
| Item | Content API for Shopping | Merchant API | ब्यौरा | 
|---|---|---|---|
| खाता | merchant_id(पूर्णांक) | account(पूर्णांक,nameयाparentस्ट्रिंग का हिस्सा) | संसाधन के नाम की स्ट्रिंग में एम्बेड किया गया खाता आईडी ढूंढें. उदाहरण के लिए, accounts/{account}. | 
| क्षेत्र | region_id(स्ट्रिंग) | {region}(string,nameस्ट्रिंग का हिस्सा) | संसाधन के नाम वाली स्ट्रिंग में एम्बेड किया गया क्षेत्र का आईडी ढूंढें. उदाहरण के लिए, accounts/{account}/regions/{region}. | 
| संसाधन का नाम | इसका इस्तेमाल अनुरोधों के लिए नहीं किया जाता. | name:accounts/{account}/regions/{region} | Get/Update/Delete अनुरोधों के लिए स्टैंडर्ड आइडेंटिफ़ायर. | 
| पैरंट का नाम | इसका इस्तेमाल अनुरोधों के लिए नहीं किया जाता. | parent:accounts/{account} | सूची बनाने/बनाने के अनुरोधों के लिए स्टैंडर्ड आइडेंटिफ़ायर. | 
संसाधन
Region संसाधन के स्ट्रक्चर में छोटे-मोटे बदलाव किए गए हैं:
| Item | Content API for Shopping | Merchant API | ब्यौरा | 
|---|---|---|---|
| संसाधन आइडेंटिफ़ायर | region_id(string),merchant_id(int64) | name(स्ट्रिंग):accounts/{account}/regions/{region} | Merchant API, संसाधन आइडेंटिफ़ायर के तौर पर सिर्फ़ एक nameफ़ील्ड का इस्तेमाल करता है. | 
| display_name | google.protobuf.StringValue | optional string | रैपर टाइप हटाया गया. | 
| radius_area | उपलब्ध नहीं है (लागू नहीं) | RadiusArea | इस नए टाइप में, क्षेत्र को रेडियस के हिसाब से तय किया जाता है. इसमें region_code,lat_lng,radius,radius_unitsशामिल हैं. डिफ़ॉल्ट रूप से, वीडियो के दिखने पर पाबंदी होती है. | 
| regional_inventory_eligible | google.protobuf.BoolValue(सिर्फ़ आउटपुट) | optional bool(सिर्फ़ आउटपुट) | रैपर टाइप हटाया गया. | 
| shipping_eligible | google.protobuf.BoolValue(सिर्फ़ आउटपुट) | optional bool(सिर्फ़ आउटपुट) | रैपर टाइप हटाया गया. | 
तरीके
तरीकों के इस्तेमाल में इस तरह बदलाव करें:
| Item | Content API for Shopping | Merchant API | ब्यौरा | 
|---|---|---|---|
| Get Region | GetRegion | GetRegion | अनुरोध में nameका इस्तेमाल किया गया है. | 
| क्षेत्र बनाएं | CreateRegion | CreateRegion | अनुरोध, यूआरएल से parentलेता है. वहीं, अनुरोध के मुख्य हिस्से मेंregionऑब्जेक्ट औरregion_idशामिल होता है. | 
| क्षेत्र अपडेट करें | UpdateRegion | UpdateRegion | अनुरोध में regionका इस्तेमाल किया गया है. इसमेंregion.nameऔरupdate_maskशामिल होना चाहिए. | 
| रीजन मिटाएं | DeleteRegion | DeleteRegion | अनुरोध में nameका इस्तेमाल किया गया है. | 
| List Regions | ListRegions | ListRegions | अनुरोध में parentका इस्तेमाल किया गया है.page_sizeऔरpage_tokenका व्यवहार एक जैसा हो. | 
| एक साथ कई आइटम बनाना | 'लागू नहीं' के तौर पर जवाब देना | BatchCreateRegions | यह एक नया तरीका है. | 
| एक साथ कई अपडेट करना | 'लागू नहीं' के तौर पर जवाब देना | BatchUpdateRegions | यह एक नया तरीका है. | 
| एक साथ कई आइटम मिटाना | 'लागू नहीं' के तौर पर जवाब देना | BatchDeleteRegions | यह एक नया तरीका है. | 
नाम बदले गए फ़ील्ड
| Item | Content API for Shopping | Merchant API | ब्यौरा | 
|---|---|---|---|
| खाता आईडी | merchant_id | account(nameयाparentका हिस्सा) | इन्हें संसाधन nameस्ट्रिंग में इंटिग्रेट किया जाता है. इसका असरRegion(जवाब) और एपीआई अनुरोधों के लिए इस्तेमाल किए जाने वाले प्रोटोबफ़ मैसेज पर पड़ता है. जैसे,CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequestऔरListRegionsRequest. | 
| क्षेत्र का आईडी | region_id | region(nameका हिस्सा),region_id | ज़्यादातर लोगों के लिए, nameमें इंटिग्रेट किया गया है.CreateRegionRequestमें अलगregion_idफ़ील्ड. इसका असरRegion(जवाब) और एपीआई अनुरोध करने के लिए इस्तेमाल किए जाने वाले प्रोटोबफ़ मैसेज पर पड़ता है. जैसे,CreateRegionRequest, GetRegionRequest, UpdateRegionRequest, DeleteRegionRequestऔरListRegionsRequest. | 
| क्षेत्र का नाम (आउटपुट) | region_id | name | जवाब में मौजूद मुख्य आइडेंटिफ़ायर फ़ील्ड, अब पूरा संसाधन nameहै. इससेRegionपर असर पड़ता है. | 
| डिसप्ले नाम | display_name | display_name | टाइप को StringValueसे बदलकरoptional stringकर दिया जाता है.
    इससेRegionपर असर पड़ता है. | 
| ज़रूरी शर्तें पूरी करने से जुड़े फ़्लैग | ...eligible | ...eligible | टाइप को BoolValueसे बदलकरoptional boolकर दिया जाता है.
    इससेRegionपर असर पड़ता है. | 
| मास्क अपडेट करें | update_mask | update_mask | Regionफ़ील्ड के पाथ. इससेUpdateRegionRequestपर असर पड़ता है. |