इस गाइड में बताया गया है कि Content API for Shopping की datafeeds और datafeedstatuses सेवाओं से, Merchant API में मौजूद डेटा सोर्स सब-एपीआई पर इंटिग्रेशन को कैसे माइग्रेट करें. डेटा सोर्स के नए सब-एपीआई की मदद से, डेटा पाइपलाइन पर ज़्यादा कंट्रोल पाया जा सकता है. साथ ही, डेटा सोर्स को मैनेज करना आसान हो जाता है.
नई सुविधाओं के बारे में ज़्यादा जानने के लिए, अपने डेटा सोर्स मैनेज करना गाइड देखें.
मुख्य अंतर
Content API for Shopping की तुलना में, Merchant API के कई फ़ायदे हैं.
डेटा सोर्स को साफ़ तौर पर बनाना. अब एपीआई, पहली बार प्रॉडक्ट शामिल करने पर अपने-आप "Content API" डेटा सोर्स नहीं बनाता. Merchant API में, प्रॉडक्ट अपलोड करने से पहले आपको डेटा सोर्स बनाने होते हैं. इससे आपको शुरू से ही, अपने प्रॉडक्ट डेटा पाइपलाइन को व्यवस्थित और मैनेज करने में ज़्यादा मदद मिलती है.
एक से ज़्यादा एपीआई डेटा सोर्स के साथ काम करता है. Content API for Shopping में, आपको सिर्फ़ एक डेटा सोर्स इस्तेमाल करने की अनुमति थी. यह "Content API" डेटा सोर्स अपने-आप बन जाता था. Merchant API की मदद से,
APIइनपुट टाइप के कई डेटा सोर्स बनाए और मैनेज किए जा सकते हैं.ऐसे डेटा सोर्स जिनमें लेबल और भाषा की जानकारी नहीं दी गई है. Merchant API की मदद से,
feedLabelऔरcontentLanguageकी जानकारी दिए बिना प्राइमरी डेटा सोर्स बनाया जा सकता है. इस तरह के डेटा सोर्स में,feedLabelऔरcontentLanguageके किसी भी कॉम्बिनेशन में प्रॉडक्ट स्वीकार किए जाते हैं. इससे उन इंटिग्रेशन के लिए प्रॉडक्ट अपलोड करना आसान हो जाता है जिनके लिए अलग-अलग क्षेत्रों के लिए अलग-अलग डेटा सोर्स की ज़रूरत नहीं होती.आसान डेटा टारगेट. हर डेटा सोर्स अब एक ही टारगेट से मेल खाता है. इसे
feedLabelऔरcontentLanguageके यूनीक कॉम्बिनेशन से तय किया जाता है. Merchant API में, कई तरह के डेटा को टारगेट करने वाले फ़ीड की सुविधा बंद कर दी गई है.फ़ाइल अपलोड होने की स्थिति के बारे में जानकारी देने वाला पेज. Merchant API, फ़ाइल पर आधारित डेटा सोर्स के स्टेटस को दिखाता है. इसके लिए, वह सिर्फ़ पढ़ने के लिए उपलब्ध
fileUploadsसंसाधन का इस्तेमाल करता है. किसी फ़ाइल के अपलोड होने की स्थिति पाने के लिए,fileUploads.getतरीके का इस्तेमाल करें. इसके साथlatestउपनाम का इस्तेमाल करें.डेटा सोर्स के नए टाइप.
DataSourceरिसोर्स, ज़्यादा वर्टिकल के साथ काम करता है. जैसे, प्रमोशन, स्थानीय इन्वेंट्री, और रीजनल इन्वेंट्री. इससे आपको अपनी सभी डेटा पाइपलाइन को एक ही जगह से मैनेज करने में मदद मिलती है.ऑटोमेटेड डेटा सोर्स. Merchant API की मदद से, अब अपने खाते के लिए डेटा के अपने-आप अपडेट होने वाले सोर्स की सुविधा को चालू या बंद किया जा सकता है. इसके लिए, Accounts sub-API में
autofeedSettings.updateAutofeedSettingsतरीके का इस्तेमाल करें. ज़्यादा जानकारी के लिए, ऑटोफ़ीड की सेटिंग कॉन्फ़िगर करना लेख पढ़ें.
अनुरोध
यहां दी गई टेबल में, Content API for Shopping और Merchant API के अनुरोध वाले यूआरएल फ़ॉर्मैट की तुलना की गई है.
| अनुरोध का ब्यौरा | Shopping के लिए Content API | Merchant API |
|---|---|---|
| डेटा स्रोत बनाएं | POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds |
POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources |
| डेटा सोर्स पाना | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} |
GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} |
| डेटा सोर्स की सूची बनाना | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds |
GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources |
| डेटा सोर्स अपडेट करना | PUT https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} |
PATCH https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} |
| कोई डेटा सोर्स मिटाना | DELETE https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID} |
DELETE https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID} |
| डेटा सोर्स फ़ेच करना | POST https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeeds/{DATAFEED_ID}/fetchNow |
POST https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}:fetch |
| डेटा सोर्स की स्थिति पाना | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses/{DATAFEED_ID} |
GET https://merchantapi.googleapis.com/v1/accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}/fileUploads/latest |
| डेटा सोर्स के स्टेटस की सूची बनाना | GET https://shoppingcontent.googleapis.com/content/v2.1/{MERCHANT_ID}/datafeedstatuses |
यह सुविधा उपलब्ध नहीं है. हर फ़ाइल आधारित डेटा सोर्स के लिए, dataSources.list और fileUploads.get का इस्तेमाल करें. |
आइडेंटिफ़ायर
Merchant API, स्ट्रिंग पर आधारित संसाधन के नाम का इस्तेमाल पहचानकर्ता के तौर पर करता है.
| आइडेंटिफ़ायर की जानकारी | Shopping के लिए Content API | Merchant API |
|---|---|---|
| डेटा सोर्स आइडेंटिफ़ायर | datafeedId (संख्यात्मक) |
name (string, फ़ॉर्मैट: accounts/{account}/dataSources/{datasource}) |
तरीके
इस टेबल में, Content API for Shopping datafeeds
और datafeedstatuses सेवाओं के तरीकों की तुलना, Merchant API में मौजूद उनके जैसे तरीकों से की गई है.
| Content API for Shopping का तरीका | Merchant API का तरीका | उपलब्धता और नोट |
|---|---|---|
datafeeds.custombatch |
उपलब्ध नहीं है | इसके बजाय, अलग-अलग एपीआई कॉल का इस्तेमाल करें. |
datafeeds.delete |
dataSources.delete |
उपलब्ध. |
datafeeds.fetchnow |
dataSources.fetch |
उपलब्ध. अब यह तरीका सिर्फ़ उन डेटा सोर्स के लिए काम करता है जिनमें फ़ाइल इनपुट की जाती है. |
datafeeds.get |
dataSources.get |
उपलब्ध. |
datafeeds.insert |
dataSources.create |
उपलब्ध. |
datafeeds.list |
dataSources.list |
उपलब्ध. |
datafeeds.update |
dataSources.update |
उपलब्ध. PUT के बजाय PATCH सिमैंटिक का इस्तेमाल करता है. |
datafeedstatuses.custombatch |
उपलब्ध नहीं है | इसके बजाय, अलग-अलग एपीआई कॉल का इस्तेमाल करें. ज़्यादा जानकारी के लिए, एक साथ कई अनुरोध भेजना लेख पढ़ें. |
datafeedstatuses.get |
fileUploads.get |
यह सुविधा, फ़ाइल पर आधारित डेटा सोर्स के लिए उपलब्ध है. हाल ही में किए गए अपलोड का स्टेटस पाने के लिए, latest उपनाम का इस्तेमाल करें. अन्य डेटा सोर्स टाइप के लिए, स्टेटस की जानकारी DataSource रिसॉर्स का हिस्सा होती है. |
datafeedstatuses.list |
उपलब्ध नहीं है | एक से ज़्यादा डेटा सोर्स का स्टेटस पाने के लिए, सबसे पहले dataSources.list के साथ सभी डेटा सोर्स की सूची बनाएं. इसके बाद, हर फ़ाइल आधारित डेटा सोर्स के लिए latest एलियास के साथ fileUploads.get को कॉल करें. |
फ़ील्ड में किए गए बदलावों की पूरी जानकारी
इस टेबल में, Content API for Shopping में मौजूद Datafeed और DatafeedStatus संसाधनों के साथ-साथ Merchant API में मौजूद DataSource और FileUpload संसाधनों के फ़ील्ड-लेवल में हुए बदलावों के बारे में बताया गया है.
| Shopping के लिए Content API | Merchant API | ब्यौरा |
|---|---|---|
Datafeed |
DataSource |
डेटा सोर्स को कॉन्फ़िगर करने के लिए मुख्य संसाधन. |
id |
name |
संसाधन का आइडेंटिफ़ायर. इसे संख्या वाले आईडी से बदलकर स्ट्रिंग रिसॉर्स का नाम कर दिया गया है. |
name |
displayName |
डेटा सोर्स का वह नाम जो उपयोगकर्ता को दिखता है. |
attributeLanguage |
primaryProductDataSource.contentLanguage |
डेटा सोर्स में मौजूद आइटम के लिए, दो अक्षरों वाला ISO 639-1 भाषा कोड. |
fileName |
fileInput.fileName |
अपलोड की गई फ़ाइल का नाम. अब यह फ़ील्ड fileInput में नेस्ट किया गया है. |
fetchSchedule |
fileInput.fetchSettings |
फ़ाइल पर आधारित डेटा सोर्स से डेटा फ़ेच करने का शेड्यूल. अब यह fileInput में नेस्ट किया गया है. |
fetchSchedule.paused |
fileInput.fetchSettings.enabled |
लॉजिक को उलट दिया जाता है. paused: true, enabled: false के बराबर है. |
format |
उपलब्ध नहीं है | fileEncoding, columnDelimiter, और quotingMode फ़ील्ड हटा दिए जाते हैं. अब इनकी पहचान अपने-आप हो जाती है. |
targets |
primaryProductDataSource.feedLabel, primaryProductDataSource.contentLanguage, primaryProductDataSource.countries |
दोहराए गए targets फ़ील्ड को हटा दिया गया है. अब हर डेटा सोर्स के लिए, इन फ़ील्ड के हिसाब से एक ही टारगेट तय किया गया है. इससे पता चलता है कि एक से ज़्यादा डेटा टारगेट वाले फ़ीड अब काम नहीं करेंगे. |
DatafeedStatus |
FileUpload |
फ़ाइल के अपलोड होने की स्थिति अब एक अलग संसाधन है. इसे सिर्फ़ पढ़ा जा सकता है. |
datafeedId |
name |
फ़ाइल अपलोड करने के लिए आइडेंटिफ़ायर. यह अपने पैरंट डेटा सोर्स को रेफ़रंस करता है. |
processingStatus |
processingState |
अपलोड किए गए डेटा को प्रोसेस करने का स्टेटस. स्ट्रिंग वैल्यू (success, failure, in progress) को इनम (SUCCEEDED, FAILED, IN_PROGRESS) से बदल दिया जाता है. |
errors, warnings |
issues |
गड़बड़ियों और चेतावनियों को एक ही issues सूची में मर्ज कर दिया जाता है. हर समस्या में एक severity फ़ील्ड होता है (ERROR या WARNING). |
lastUploadDate |
uploadTime |
पिछली बार अपलोड किए गए फ़ीड का टाइमस्टैंप. फ़ॉर्मैट को स्ट्रिंग से बदलकर Timestamp ऑब्जेक्ट कर दिया गया है. |
country, language, feedLabel |
लागू नहीं | ये फ़ील्ड अब स्थिति संसाधन पर मौजूद नहीं हैं. ये DataSource संसाधन का हिस्सा हैं. |
targets[].included_destinations, targets[].excluded_destinations |
primaryProductDataSource.destinations |
शामिल किए गए और बाहर रखे गए डेस्टिनेशन की दो अलग-अलग सूचियों को, एक ही destinations सूची से बदल दिया गया है. नई सूची में मौजूद हर आइटम एक ऑब्जेक्ट होता है. यह ऑब्जेक्ट, डेस्टिनेशन और उसकी स्थिति (ENABLED या DISABLED) के बारे में बताता है. इससे ज़्यादा जानकारी मिलती है. |