Method: indexing.datasources.items.index

Item एसीएल, मेटाडेटा, और कॉन्टेंट को अपडेट करता है. अगर Item मौजूद नहीं है, तो यह उसे डाल देगा. इस तरीके से, कुछ हिस्से को अपडेट नहीं किया जा सकता. जिन फ़ील्ड में कोई वैल्यू नहीं दी गई है उन्हें Cloud Search के इंडेक्स से हटा दिया जाता है.

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

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

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

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

पाथ पैरामीटर

पैरामीटर
item.name

string

आइटम का नाम. फ़ॉर्मैट: datasources/{sourceId}/items/{itemId}

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

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

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

JSON के काेड में दिखाना
{
  "item": {
    "name": string,
    "acl": {
      "inheritAclFrom": string,
      "aclInheritanceType": enum (ItemAcl.AclInheritanceType),
      "readers": [
        {
          object (Principal)
        }
      ],
      "deniedReaders": [
        {
          object (Principal)
        }
      ],
      "owners": [
        {
          object (Principal)
        }
      ]
    },
    "metadata": {
      "title": string,
      "sourceRepositoryUrl": string,
      "containerName": string,
      "objectType": string,
      "createTime": string,
      "updateTime": string,
      "interactions": [
        {
          object (Interaction)
        }
      ],
      "contentLanguage": string,
      "mimeType": string,
      "searchQualityMetadata": {
        object (SearchQualityMetadata)
      },
      "keywords": [
        string
      ],
      "hash": string,
      "contextAttributes": [
        {
          object (ContextAttribute)
        }
      ]
    },
    "structuredData": {
      "object": {
        object (StructuredDataObject)
      },
      "hash": string
    },
    "content": {
      "contentFormat": enum (ItemContent.ContentFormat),
      "hash": string,

      // Union field content can be only one of the following:
      "inlineContent": string,
      "contentDataRef": {
        object (UploadItemRef)
      }
      // End of list of possible types for union field content.
    },
    "version": string,
    "status": {
      "code": enum (ItemStatus.Code),
      "processingErrors": [
        {
          object (ProcessingError)
        }
      ],
      "repositoryErrors": [
        {
          object (RepositoryError)
        }
      ]
    },
    "queue": string,
    "payload": string,
    "itemType": enum (Item.ItemType)
  },
  "connectorName": string,
  "mode": enum (RequestMode.Mode),
  "debugOptions": {
    object (DebugOptions)
  },
  "indexItemOptions": {
    object (IndexItemOptions)
  }
}
फ़ील्ड
item.acl

object (ItemAcl)

इस आइटम के लिए ऐक्सेस कंट्रोल की सूची.

item.metadata

object (ItemMetadata)

मेटाडेटा की जानकारी.

item.structuredData

object (ItemStructuredData)

आइटम का स्ट्रक्चर्ड डेटा, जो डेटा सोर्स के स्कीमा में रजिस्टर किए गए ऑब्जेक्ट की परिभाषा के मुताबिक होना चाहिए.

item.content

object (ItemContent)

आइटम का ऐसा कॉन्टेंट जिसे इंडेक्स किया जाना है और जिसे टेक्स्ट के तौर पर खोजा जा सकता है.

item.version

string (bytes format)

ज़रूरी है. इंडेक्स करने वाला सिस्टम, डेटा सोर्स के वर्शन को बाइट स्ट्रिंग के तौर पर सेव करता है. साथ ही, इंडेक्स में मौजूद आइटम के वर्शन की तुलना, लैक्सिकल ऑर्डरिंग का इस्तेमाल करके, सूची में मौजूद आइटम के वर्शन से करता है.

Cloud Search Indexing, सूची में मौजूद किसी भी ऐसे आइटम को इंडेक्स या मिटा नहीं देगा जिसका वर्शन, इंडेक्स किए गए मौजूदा आइटम के वर्शन से कम या उसके बराबर हो. इस फ़ील्ड की लंबाई ज़्यादा से ज़्यादा 1024 बाइट हो सकती है.

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

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

item.status

object (ItemStatus)

आइटम की स्थिति. सिर्फ़ आउटपुट के लिए फ़ील्ड.

item.queue

string

इस आइटम की सूची. इसमें 100 से ज़्यादा वर्ण नहीं हो सकते.

item.payload

string (bytes format)

इस आइटम के लिए, अतिरिक्त स्टेटस कनेक्टर सेव किया जा सकता है. इस फ़ील्ड की लंबाई ज़्यादा से ज़्यादा 10,000 बाइट हो सकती है.

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

item.itemType

enum (Item.ItemType)

इस आइटम का टाइप.

connectorName

string

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

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

mode

enum (RequestMode.Mode)

ज़रूरी है. इस अनुरोध के लिए RequestMode.

debugOptions

object (DebugOptions)

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

indexItemOptions

object (IndexItemOptions)

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

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

अनुमति के दायरे

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

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

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

IndexItemOptions

JSON के काेड में दिखाना
{
  "allowUnknownGsuitePrincipals": boolean
}
फ़ील्ड
allowUnknownGsuitePrincipals

boolean

इससे यह तय होता है कि इंडेक्स करने के अनुरोध में, Google Workspace के ऐसे प्रिंसिपल को अनुमति दी जानी चाहिए जो मौजूद नहीं हैं या मिटा दिए गए हैं.