इंडेक्सिंग एपीआई का इस्तेमाल करना

खास जानकारी

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

इंडेक्सिंग एपीआई को अनुरोध भेजते समय किसी वेब पेज के पते के बारे में सटीक जानकारी दें. इससे Google को सूचना मिलेगी कि वह इस पेज को क्रॉल कर सकता है या इसे इंडेक्स से हटा सकता है.

इंडेक्सिंग एपीआई की मदद से आप कई काम कर सकते हैं. इनमें से कुछ के उदाहरण नीचे दिए गए हैं:

यूआरएल अपडेट करना

Send the following HTTP POST request to https://indexing.googleapis.com/v3/urlNotifications:publish endpoint
{
  "url": "https://careers.google.com/jobs/google/technical-writer",
  "type": "URL_UPDATED"
}
यूआरएल हटाना

Send the following HTTP POST request to https://indexing.googleapis.com/v3/urlNotifications:publish endpoint

  "url": "https://careers.google.com/jobs/google/technical-writer",
  "type": "URL_DELETED"
}
सूचना के बारे में अपडेट पाना

Send a HTTP GET request to https://indexing.googleapis.com/v3/urlNotifications/metadata endpoint

पैरामीटर

नीचे दिए टेबल में उन फ़ील्ड के बारे में बताया गया है जो किसी यूआरएल में बदलाव करने और उसे हटाने के सभी तरीकों के लिए ज़रूरी हैं:

फ़ील्ड
url

ज़रूरी

वेबसाइट में मौजूद उस चीज़ की जगह की पूरी जानकारी जिसे आप अपडेट करना या हटाना चाहते हैं.

type

ज़रूरी

सबमिट की गई सूचना किस तरह की है.

दिशा-निर्देश

यूआरएल में बदलाव करने या इसे हटाने का अनुरोध भेजने के लिए, नीचे दिए गए दिशा-निर्देश लागू होते हैं.

  • https://indexing.googleapis.com/v3/UrlNotifications:publish दिखाने के सभी अनुरोध में Content-Type हेडर के तौर पर "application/json" का इस्तेमाल करना ज़रूरी है.
  • एक साथ इंडेक्स करने के अनुरोध भेजना के अनुसार, आप यूआरएल अपडेट करने के अनुरोध के साथ सिर्फ़ एक यूआरएल सबमिट कर सकते हैं या एक साथ ज़्यादा से ज़्यादा 100 अनुरोध भेज सकते हैं.
  • इन उदाहरणों में दिए गए अनुरोध वाला हिस्सा content वैरिएबल का मान है जिसका इस्तेमाल ऐक्सेस टोकन के उदाहरणों में किया जाता है.

यूआरएल अपडेट करना

किसी नए यूआरएल को क्रॉल करने या पहले सबमिट किए गए यूआरएल में हुए बदलाव के बारे में Google को जानकारी देने के लिए, यह तरीका अपनाएं:

  1. नीचे दिए गए एंडपॉइंट पर POST अनुरोध सबमिट करें:
    Send a HTTP POST request to https://indexing.googleapis.com/v3/urlNotifications:publish
  2. अनुरोध के कोड में इस सिंटैक्स का इस्तेमाल करके पेज का पता बताएं:
    {
      "url": "content_location",
      "type": "URL_UPDATED"
    }
  3. Google HTTP 200 जवाब के साथ इंडेक्सिंग एपीआई दिखाने का अनुरोध पूरा करता है. HTTP 200 मैसेज का मतलब है कि Google इस यूआरएल को जल्द ही फिर से क्रॉल करने की कोशिश कर सकता है. इस जवाब के मुख्य भाग में एक UrlNotificationMetadata ऑब्जेक्ट होता है. इस ऑब्जेक्ट के फ़ील्ड में सूचना के अपडेट का अनुरोध के तौर पर मिले मान होते हैं.
  4. अगर आपको HTTP 200 जवाब नहीं मिलता, तो इंडेक्सिंग एपीआई से जुड़ी खास गड़बड़ियां देखें.
  5. अगर पेज के कॉन्टेंट में बदलाव किया जाता है, तो इस बदलाव की सूचना Google को दें. इससे Google, पेज को दोबारा क्रॉल करेगा.
  6. आपको डिफ़ॉल्ट रूप से तय की गई सीमा से ज़्यादा बार अनुरोध भेजने की ज़रूरत पड़ सकती है. अपनी मौजूदा सीमा देखने और सीमा बढ़ाने का अनुरोध करने के लिए, सीमा देखें.

यूआरएल हटाना

अपने सर्वर से किसी पेज को मिटाने या किसी दिए गए पेज के <head> सेक्शन में <meta name="robots" content="noindex" /> टैग जोड़ने पर, Google को इसकी सूचना दें. ऐसे में, हम पेज को अपने इंडेक्स से हटा पाएंगे और उसे दोबारा क्रॉल और इंडेक्स नहीं करेंगे. पेज को हटाने का अनुरोध करने से पहले, यह ज़रूरी है कि यूआरएल 404 या 410 स्थिति कोड दिखाए. साथ ही, पेज में <meta name="robots" content="noindex" /> मेटा टैग होना चाहिए.

हमारे इंडेक्स से पेज को हटाने का अनुरोध करने के लिए, यह तरीका अपनाएं:

  1. नीचे दिए गए एंडपॉइंट पर POST का अनुरोध भेजें:
    Send a HTTP POST request to https://indexing.googleapis.com/v3/urlNotifications:publish
  2. अनुरोध के कोड में उस पेज का यूआरएल डालें जिसे आप इंडेक्स से हटाना चाहते हैं. इसके लिए, नीचे दिए गए सिंटैक्स का इस्तेमाल करें:
    {
      "url": "content_location",
      "type": "URL_DELETED"
    }

    उदाहरण के लिए:

    {
      "url": "https://careers.google.com/jobs/google/technical-writer",
      "type": "URL_DELETED"
    }
  3. Google HTTP 200 जवाब के साथ इंडेक्सिंग एपीआई दिखाने का अनुरोध पूरा करता है. HTTP 200 जवाब का मतलब है कि Google इस यूआरएल को इंडेक्स से हटा सकता है. इस जवाब के मुख्य भाग में एक UrlNotificationMetadata ऑब्जेक्ट होता है. इस ऑब्जेक्ट के फ़ील्ड में सूचना के अपडेट का अनुरोध के तौर पर मिले मान होते हैं.
  4. अगर आपको HTTP 200 जवाब नहीं मिलता, तो इंडेक्सिंग एपीआई से जुड़ी खास गड़बड़ियां देखें.
  5. आपको डिफ़ॉल्ट रूप से तय की गई सीमा से ज़्यादा बार अनुरोध भेजने की ज़रूरत पड़ सकती है. अपनी मौजूदा सीमा देखने और सीमा बढ़ाने का अनुरोध करने के लिए, सीमा देखें.

सूचना की स्थिति पाना

इंडेक्सिंग एपीआई का इस्तेमाल करके, आप जान सकते हैं कि Google को किसी यूआरएल के बारे में अलग-अलग तरह की सूचनाएं पिछली बार कब मिली थीं. GET के अनुरोध से आपको यह नहीं पता चलता है कि Google आपके यूआरएल को कब इंडेक्स करता है या हटाता है. इससे सिर्फ़ यह पता चलता है कि आपका अनुरोध पूरी तरह सबमिट हुआ या नहीं.

सूचना की स्थिति पाने के लिए यह तरीका अपनाएं:

  1. नीचे दिए गए एंडपॉइंट पर GET अनुरोध सबमिट करें: आप जो यूआरएल डालते हैं वे यूआरएल-एनकोड किए गए होने चाहिए. उदाहरण के लिए, : (कोलन) को %3A से बदलें और / (फ़ॉरवर्ड स्लैश) को %2F से बदलें.
    Send a HTTP GET request to https://indexing.googleapis.com/v3/urlNotifications/metadata?url=url-encoded_url

    उदाहरण के लिए:

    GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=https%3A%2F%2Fcareers.google.com%2Fjobs%2Fgoogle%2Ftechnical-writer
    
  2. इंडेक्सिंग एपीआई एक HTTP 200 मैसेज के साथ जवाब देता है जिसमें एक पेलोड होता है. इसमें सूचना के बारे में जानकारी होती है. इस उदाहरण में अनुरोध का मुख्य भाग दिया गया है जिसमें सूचना में हुए बदलाव और सूचना मिटाने के बारे में जानकारी दी गई है.
    {
      url: “http://foo.com“
      latest_update {
        type: “URL_UPDATED”
        notify_time: “2017-07-31T19:30:54.524457662Z”
      }
      latest_remove {
        type: “URL_DELETED”
        notify_time: “2017-08-31T19:30:54.524457662Z”
      }
    }
    
  3. अगर आपको HTTP 200 जवाब नहीं मिलता, तो इंडेक्सिंग एपीआई से जुड़ी खास गड़बड़ियां देखें.
  4. आपको डिफ़ॉल्ट रूप से तय की गई सीमा से ज़्यादा बार अनुरोध भेजने की ज़रूरत पड़ सकती है. अपनी मौजूदा सीमा देखने और सीमा बढ़ाने का अनुरोध करने के लिए, सीमा देखें.

इंडेक्स करने के कई अनुरोध एक साथ भेजना

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

इंडेक्सिंग एपीआई को दिखाने के कई अनुरोध एक साथ भेजने के लिए, इस एंडपॉइंट का इस्तेमाल करें:

https://indexing.googleapis.com/batch

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

Google की एपीआई क्लाइंट लाइब्रेरी में एक साथ कई अनुरोध भेजने की सुविधा काम करती है. इससे समूह में अनुरोध भेजना आसान हो जाता है. क्लाइंट लाइब्रेरी से कई अनुरोध भेजने के बारे में जानने के लिए, भाषा के हिसाब से नीचे दिए गए पेज देखें.

अगर आप इन पेज पर एक साथ कई अनुरोध भेजने के उदाहरण इस्तेमाल करते हैं, तो आपको अपने कोड में इस हिसाब से बदलाव करना होगा कि उनमें ऐक्सेस टोकन पाने का तरीका में दी गई ज़रूरी शर्तें पूरी होती हों.

कई अनुरोध एक साथ भेजने के कोड के नीचे दिए गए उदाहरण में सूचना में बदलाव करने और सूचना हटाने के कोड के बारे में बताया गया है:

POST /batch HTTP/1.1
Host: indexing.googleapis.com
Content-Length: content_length
Content-Type: multipart/mixed; boundary="===============7330845974216740156=="
Authorization: Bearer oauth2_token

--===============7330845974216740156==
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+2>

POST /v3/urlNotifications:publish [1]
Content-Type: application/json
accept: application/json
content-length: 58

{ "url": "http://example.com/jobs/42", "type": "URL_UPDATED" }
--===============7330845974216740156==
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+1>

POST /v3/urlNotifications:publish [2]
Content-Type: application/json
accept: application/json
content-length: 75

{ "url": "http://example.com/widgets/1", "type": "URL_UPDATED" }
--===============7330845974216740156==
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+3>

POST /v3/urlNotifications:publish [3]
Content-Type: application/json
accept: application/json
content-length: 58

{ "url": "http://example.com/jobs/43", "type": "URL_DELETED" }
--===============7330845974216740156==

ज़्यादा जानकारी के लिए, एक साथ कई अनुरोध भेजने का तरीका देखें.