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 से ज़्यादा वर्ण नहीं हो सकते.

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

अनुरोध के मुख्य भाग में नीचे दिए गए स्ट्रक्चर वाला डेटा होता है:

JSON के काेड में दिखाना
{
  "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 फ़ील्ड को सेट करने पर, आर्ग्युमेंट से जुड़ी गड़बड़ी होती है. इसमें ज़्यादा से ज़्यादा 2048 वर्ण इस्तेमाल किए जा सकते हैं.

item.structuredDataHash

string

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

item.contentHash

string

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

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

इंडेक्स करने की सूची में जोड़े जाने वाले आइटम के बारे में जानकारी देता है.

JSON के काेड में दिखाना
{
  "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 फ़ील्ड को सेट करने पर, आर्ग्युमेंट से जुड़ी गड़बड़ी होती है. इसमें ज़्यादा से ज़्यादा 2048 वर्ण इस्तेमाल किए जा सकते हैं.

structuredDataHash

string

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

contentHash

string

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

payload

string (bytes format)

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

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

queue

string

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

repositoryError

object (RepositoryError)

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

PushItem.Type

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

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