Method: indexing.datasources.items.push

बाद में पोल कराने और अपडेट करने के लिए, किसी आइटम को सूची में पुश किया जाता है.

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

एचटीटीपी अनुरोध

POST https://cloudsearch.googleapis.com/v1/indexing/{item.name=datasources/*/items/*}:push

यूआरएल, gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.

पाथ के पैरामीटर

पैरामीटर
item.name

string

इंडेक्स करने की सूची में पुश करने के लिए, item का नाम.

फ़ॉर्मैट: datasources/{sourceId}/items/{ID}

यह अनिवार्य फ़ील्ड है. ज़्यादा से ज़्यादा 1536 वर्ण इस्तेमाल किए जा सकते हैं.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में इस तरह का डेटा शामिल होता है:

जेएसओएन के काेड में दिखाना
{
  "item": {
    "name": string,
    "type": enum (PushItem.Type),
    "metadataHash": string,
    "structuredDataHash": string,
    "contentHash": string,
    "payload": string,
    "queue": string,
    "repositoryError": {
      "type": enum (RepositoryError.Type),
      "httpStatusCode": integer,
      "errorMessage": string
    }
  },
  "connectorName": string,
  "debugOptions": {
    object (DebugOptions)
  }
}
फ़ील्ड
item.type

enum (PushItem.Type)

पुश ऑपरेशन का टाइप, जो पुश व्यवहार के बारे में बताता है.

item.metadataHash

string

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

item.structuredDataHash

string

डेटा स्टोर करने की जगह के हिसाब से, आइटम का स्ट्रक्चर्ड डेटा हैश. अगर बताया गया है, तो इसका इस्तेमाल इस आइटम की स्थिति में बदलाव करने का तरीका तय करने के लिए किया जाता है. इस फ़ील्ड और type फ़ील्ड को सेट करने पर, आर्ग्युमेंट की गड़बड़ी होती है. ज़्यादा से ज़्यादा 2,048 वर्ण इस्तेमाल किए जा सकते हैं.

item.contentHash

string

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

item.payload

string (bytes format)

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

Base64 कोड में बदली गई स्ट्रिंग.

item.queue

string

वह सूची जिसमें यह आइटम है. अगर यह फ़ील्ड तय नहीं किया गया है, तो default सूची चुनी जाती है. ज़्यादा से ज़्यादा 512 वर्ण हो सकते हैं.

item.repositoryError

object (RepositoryError)

कनेक्टर या रिपॉज़िटरी की गड़बड़ी की जानकारी को स्टोर करने के लिए, इस फ़ील्ड को भरें. यह जानकारी Admin Console में दिखती है. type के REPOSITORY_ERROR होने पर ही इस फ़ील्ड में जानकारी भरी जा सकती है.

connectorName

string

यह कॉल करने वाले कनेक्टर का नाम.

फ़ॉर्मैट: datasources/{sourceId}/connectors/{ID}

debugOptions

object (DebugOptions)

डीबग करने के सामान्य विकल्प.

जवाब का मुख्य भाग

कामयाब रहने पर, जवाब के मुख्य हिस्से में Item का एक इंस्टेंस शामिल किया जाता है.

अनुमति पाने के लिंक

इनमें से कोई एक OAuth स्कोप ज़रूरी है:

  • https://www.googleapis.com/auth/cloud_search.indexing
  • https://www.googleapis.com/auth/cloud_search

ज़्यादा जानकारी के लिए, अनुमति देने से जुड़ी गाइड देखें.

PushItem

यह उस आइटम के बारे में बताता है जिसे इंडेक्स करने के लिए सूची में डालना है.

जेएसओएन के काेड में दिखाना
{
  "name": string,
  "type": enum (PushItem.Type),
  "metadataHash": string,
  "structuredDataHash": string,
  "contentHash": string,
  "payload": string,
  "queue": string,
  "repositoryError": {
    object (RepositoryError)
  }
}
फ़ील्ड
name

string

इंडेक्स करने की सूची में पुश करने के लिए, item का नाम.

फ़ॉर्मैट: datasources/{sourceId}/items/{ID}

यह अनिवार्य फ़ील्ड है. ज़्यादा से ज़्यादा 1536 वर्ण इस्तेमाल किए जा सकते हैं.

type

enum (PushItem.Type)

पुश ऑपरेशन का टाइप, जो पुश व्यवहार के बारे में बताता है.

metadataHash

string

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

structuredDataHash

string

डेटा स्टोर करने की जगह के हिसाब से, आइटम का स्ट्रक्चर्ड डेटा हैश. अगर बताया गया है, तो इसका इस्तेमाल इस आइटम की स्थिति में बदलाव करने का तरीका तय करने के लिए किया जाता है. इस फ़ील्ड और type फ़ील्ड को सेट करने पर, आर्ग्युमेंट की गड़बड़ी होती है. ज़्यादा से ज़्यादा 2,048 वर्ण इस्तेमाल किए जा सकते हैं.

contentHash

string

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

payload

string (bytes format)

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

Base64 कोड में बदली गई स्ट्रिंग.

queue

string

वह सूची जिसमें यह आइटम है. अगर यह फ़ील्ड तय नहीं किया गया है, तो default सूची चुनी जाती है. ज़्यादा से ज़्यादा 512 वर्ण हो सकते हैं.

repositoryError

object (RepositoryError)

कनेक्टर या रिपॉज़िटरी की गड़बड़ी की जानकारी को स्टोर करने के लिए, इस फ़ील्ड को भरें. यह जानकारी Admin Console में दिखती है. type के REPOSITORY_ERROR होने पर ही इस फ़ील्ड में जानकारी भरी जा सकती है.

PushItem.Type

पुश ऑपरेशन का टाइप, जो पुश व्यवहार के बारे में बताता है.

Enums
UNSPECIFIED डिफ़ॉल्ट रूप से तय नहीं है. इस नीति से पता चलता है कि पुश ऑपरेशन को ItemStatus में बदलाव नहीं करना चाहिए
MODIFIED इससे पता चलता है कि डेटा स्टोर करने की जगह के दस्तावेज़ में, पिछले update कॉल के बाद बदलाव या अपडेट किया गया है. इससे किसी मौजूदा आइटम की स्थिति बदलकर MODIFIED हो जाती है. अगर यह कॉल किसी ऐसे आइटम पर किया जाता है जो मौजूद नहीं है, तो स्थिति NEW_ITEM में बदल जाती है.
NOT_MODIFIED पिछले अपडेट कॉल के बाद, डेटा स्टोर करने की जगह के आइटम में कोई बदलाव नहीं किया गया. यह पुश कार्रवाई, स्टेटस को ACCEPTED स्थिति पर सेट कर देगी.
REPOSITORY_ERROR कनेक्टर को इस आइटम के बारे में डेटा स्टोर करने की जगह से जुड़ी गड़बड़ी का सामना करना पड़ रहा है. स्टेटस को REPOSITORY_ERROR स्टेटस में बदलें. आइटम का रिज़र्वेशन नहीं किया जाता है. उसे एक्स्पोनेंशियल बैकऑफ़ के ज़रिए तय किए गए बाद के समय पर फिर से शेड्यूल किया जाता है.
REQUEUE REQUEUE के साथ सिर्फ़ उन आइटम के लिए कॉल पुश करें जिन्हें रिज़र्व किया गया है. यह कार्रवाई आइटम का रिज़र्वेशन रद्द करती है और उसके उपलब्ध समय को वॉल क्लॉक टाइम पर रीसेट करती है.