REST Resource: indexing.datasources.items

Resource: Item

Mewakili satu objek yang merupakan item dalam indeks penelusuran, seperti file, folder, atau catatan database.

Representasi JSON
{
  "name": string,
  "acl": {
    object (ItemAcl)
  },
  "metadata": {
    object (ItemMetadata)
  },
  "structuredData": {
    object (ItemStructuredData)
  },
  "content": {
    object (ItemContent)
  },
  "version": string,
  "status": {
    object (ItemStatus)
  },
  "queue": string,
  "payload": string,
  "itemType": enum (Item.ItemType)
}
Kolom
name

string

Nama item. Format: datasources/{sourceId}/items/{itemId}

Bidang ini harus diisi. Panjang maksimum adalah 1.536 karakter.

acl

object (ItemAcl)

Daftar kontrol akses untuk item ini.

metadata

object (ItemMetadata)

Informasi metadata.

structuredData

object (ItemStructuredData)

Data terstruktur untuk item yang harus sesuai dengan definisi objek terdaftar dalam skema untuk sumber data.

content

object (ItemContent)

Konten item yang akan diindeks dan teksnya dapat ditelusuri.

version

string (bytes format)

Wajib diisi. Sistem pengindeksan menyimpan versi dari sumber data sebagai string byte dan membandingkan versi Item dalam indeks dengan versi Item dalam antrean menggunakan pengurutan leksikal.

Cloud Search Indexing tidak akan mengindeks atau menghapus item dalam antrean dengan nilai versi yang kurang dari atau sama dengan versi item yang saat ini diindeks. Panjang maksimum kolom ini adalah 1.024 byte.

Untuk informasi tentang pengaruh versi item terhadap proses penghapusan, lihat Menangani revisi setelah penghapusan manual.

String berenkode base64.

status

object (ItemStatus)

Status item. Kolom hanya output.

queue

string

Antrean untuk item ini. Panjang maksimum adalah 100 karakter.

payload

string (bytes format)

Konektor status tambahan dapat disimpan untuk item ini. Panjang maksimum adalah 10.000 byte.

String berenkode base64.

itemType

enum (Item.ItemType)

Jenis untuk item ini.

ItemAcl

Informasi daftar kontrol akses untuk item. Untuk informasi selengkapnya, lihat ACL Peta.

Representasi JSON
{
  "inheritAclFrom": string,
  "aclInheritanceType": enum (ItemAcl.AclInheritanceType),
  "readers": [
    {
      object (Principal)
    }
  ],
  "deniedReaders": [
    {
      object (Principal)
    }
  ],
  "owners": [
    {
      object (Principal)
    }
  ]
}
Kolom
inheritAclFrom

string

Nama item yang akan mewarisi Daftar Izin Akses (ACL). Catatan: Pewarisan ACL hanya memberikan izin akses ke item turunan dan tidak menentukan hubungan struktural, juga tidak memberikan cara mudah untuk menghapus kelompok item dalam jumlah besar. Menghapus induk ACL dari indeks hanya akan mengubah izin akses item turunan yang mereferensikan induk di kolom inheritAclFrom. Item tersebut masih ada dalam indeks, tetapi mungkin tidak terlihat di hasil penelusuran. Sebaliknya, penghapusan item penampung juga akan menghapus semua item yang merujuk penampung melalui kolom containerName. Panjang maksimum kolom ini adalah 1.536 karakter.

aclInheritanceType

enum (ItemAcl.AclInheritanceType)

Menetapkan jenis aturan akses yang akan diterapkan saat item mewarisi ACL-nya dari induk. Kolom ini harus selalu ditetapkan bersama dengan kolom inheritAclFrom. Selain itu, jika kolom inheritAclFrom ditetapkan, kolom ini harus ditetapkan ke AclInheritanceType yang valid.

readers[]

object (Principal)

Daftar akun utama yang diizinkan untuk melihat item di hasil penelusuran. Opsional jika mewarisi izin dari item lain atau jika item tidak dimaksudkan untuk terlihat, seperti virtual containers. Jumlah elemen maksimum adalah 1.000.

deniedReaders[]

object (Principal)

Daftar akun utama yang secara eksplisit ditolak aksesnya ke item di hasil penelusuran. Meskipun akun utama tidak diberi akses secara default, gunakan pembaca yang ditolak untuk menangani pengecualian dan mengganti daftar yang diizinkan pembaca. Jumlah elemen maksimum adalah 100.

owners[]

object (Principal)

Opsional. Daftar pemilik item. Kolom ini tidak berpengaruh pada izin akses dokumen. Namun, hal ini menawarkan sedikit menaikkan peringkat item di mana pengguna yang mengajukan kueri adalah pemilik. Jumlah elemen maksimum adalah 5.

ItemAcl.AclInheritanceType

Jenis pewarisan ACL.

Enum
NOT_APPLICABLE Nilai default saat item ini tidak mewarisi ACL. Gunakan NOT_APPLICABLE saat inheritAclFrom kosong. Item tanpa pewarisan ACL masih dapat memiliki ACL yang disediakan oleh kolom readers dan deniedReaders-nya sendiri.
CHILD_OVERRIDE Selama konflik otorisasi, ACL item turunan menentukan akses bacanya.
PARENT_OVERRIDE Selama konflik otorisasi, ACL item induk yang ditentukan di kolom inheritAclFrom menentukan akses baca.
BOTH_PERMIT Akses hanya diberikan jika item ini dan item induk yang ditentukan di kolom inheritAclFrom mengizinkan akses baca.

Akun utama

Referensi ke pengguna, grup, atau domain.

Representasi JSON
{

  // Union field principal can be only one of the following:
  "gsuitePrincipal": {
    object (GSuitePrincipal)
  },
  "userResourceName": string,
  "groupResourceName": string
  // End of list of possible types for union field principal.
}
Kolom

Kolom union principal.

principal hanya dapat berupa salah satu dari yang berikut:

gsuitePrincipal

object (GSuitePrincipal)

Akun utama ini adalah pengguna, grup, atau domain Google Workspace.

userResourceName

string

Akun utama ini adalah pengguna yang diidentifikasi menggunakan identitas eksternal. Kolom nama harus menentukan nama resource pengguna dengan format ini: identitysources/{sourceId}/users/{ID}

groupResourceName

string

Akun utama ini adalah grup yang diidentifikasi menggunakan identitas eksternal. Kolom nama harus menentukan nama resource grup dengan format ini: identitysources/{sourceId}/groups/{ID}

ItemMetadata

Kolom metadata yang tersedia untuk item.

Representasi JSON
{
  "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)
    }
  ]
}
Kolom
title

string

Judul item. Jika diberikan, kolom ini akan menjadi judul yang ditampilkan dari hasil query.search. Panjang maksimum adalah 2.048 karakter.

sourceRepositoryUrl

string

Link ke repositori sumber yang menayangkan data. Hasil penelusuran menerapkan link ini ke judul. Spasi kosong atau karakter khusus dapat menyebabkan link hasil Cloud Seach memicu pemberitahuan pengalihan; Untuk menghindarinya, enkode URL tersebut. Panjang maksimum adalah 2.048 karakter.

containerName

string

Nama penampung untuk item ini. Penghapusan item penampung akan menyebabkan penghapusan otomatis item ini. Catatan: ACL tidak diwarisi dari item container. Untuk memberikan pewarisan ACL untuk item, gunakan kolom inheritAclFrom. Panjang maksimum adalah 1.536 karakter.

objectType

string

Jenis item. Nama ini harus sesuai dengan nama definisi objek dalam skema yang terdaftar untuk sumber data. Misalnya, jika skema untuk sumber data berisi definisi objek dengan nama 'document', permintaan pengindeksan item untuk objek dari jenis tersebut harus menetapkan objectType ke 'document'. Panjang maksimum adalah 256 karakter.

createTime

string (Timestamp format)

Waktu saat item dibuat di repositori sumber.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Waktu saat item terakhir diubah di repositori sumber.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

interactions[]

object (Interaction)

Daftar interaksi untuk item. Interaksi digunakan untuk meningkatkan kualitas query.search, tetapi tidak ditampilkan kepada pengguna akhir. Jumlah elemen maksimum adalah 1.000.

contentLanguage

string

Kode bahasa BCP-47 untuk item, seperti "en-US" atau "sr-Latn". Untuk informasi selengkapnya, lihat http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Panjang maksimum adalah 32 karakter.

mimeType

string

Jenis mime asli ItemContent.content dalam repositori sumber. Panjang maksimum adalah 256 karakter.

searchQualityMetadata

object (SearchQualityMetadata)

Metadata kualitas penelusuran tambahan untuk item

keywords[]

string

Kata kunci atau frasa tambahan yang harus cocok dengan item. Digunakan secara internal untuk konten buatan pengguna. Jumlah elemen maksimum adalah 100. Panjang maksimum adalah 8.192 karakter.

hash

string

Nilai hashing yang diberikan oleh pemanggil API. Ini dapat digunakan dengan metode items.push untuk menghitung status yang diubah. Panjang maksimum adalah 2.048 karakter.

contextAttributes[]

object (ContextAttribute)

Sekumpulan atribut bernama yang terkait dengan item. Hal ini dapat digunakan untuk memengaruhi peringkat item berdasarkan konteks dalam permintaan. Jumlah elemen maksimum adalah 10.

Interaksi

Menampilkan interaksi antara pengguna dan item.

Representasi JSON
{
  "type": enum (Interaction.InteractionType),
  "principal": {
    object (Principal)
  },
  "interactionTime": string
}
Kolom
type

enum (Interaction.InteractionType)

principal

object (Principal)

Pengguna yang menindaklanjuti item.

interactionTime

string (Timestamp format)

Waktu saat pengguna menindaklanjuti item. Jika ada beberapa tindakan dari jenis yang sama untuk satu pengguna, hanya tindakan terbaru yang akan dicatat.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

Interaction.InteractionType

Jenis aktivitas yang dilakukan pengguna pada item.

Enum
UNSPECIFIED Nilai tidak valid.
VIEW Interaksi ini menunjukkan bahwa pengguna melihat item.
EDIT Interaksi ini menunjukkan bahwa pengguna mengedit item.

SearchQualityMetadata

Metadata kualitas penelusuran tambahan untuk item.

Representasi JSON
{
  "quality": number
}
Kolom
quality

number

Indikasi kualitas item, yang digunakan untuk memengaruhi kualitas penelusuran. nilai harus antara 0,0 (kualitas terendah) dan 1,0 (kualitas tertinggi). Nilai defaultnya adalah 0.0.

ContextAttribute

Atribut bernama yang terkait dengan item yang dapat digunakan untuk memengaruhi peringkat item berdasarkan konteks dalam permintaan.

Representasi JSON
{
  "name": string,
  "values": [
    string
  ]
}
Kolom
name

string

Nama atribut. Wajib diisi. Panjang maksimum adalah 32 karakter. Nama harus diawali dengan huruf dan hanya berisi huruf (A-Z, a-z) atau angka (0-9). Nama akan dinormalkan (huruf kecil) sebelum dicocokkan.

values[]

string

Nilai teks atribut. Jumlah elemen maksimum adalah 10. Panjang maksimum elemen dalam array adalah 32 karakter. Nilai akan dinormalkan (huruf kecil) sebelum dicocokkan.

ItemStructuredData

Kolom data terstruktur yang tersedia untuk item.

Representasi JSON
{
  "object": {
    object (StructuredDataObject)
  },
  "hash": string
}
Kolom
object

object (StructuredDataObject)

Objek data terstruktur yang harus sesuai dengan definisi objek terdaftar dalam skema untuk sumber data.

hash

string

Nilai hashing yang diberikan oleh pemanggil API. Ini dapat digunakan dengan metode items.push untuk menghitung status yang diubah. Panjang maksimum adalah 2.048 karakter.

StructuredDataObject

Objek data terstruktur yang terdiri dari properti bernama.

Representasi JSON
{
  "properties": [
    {
      object (NamedProperty)
    }
  ]
}
Kolom
properties[]

object (NamedProperty)

Properti untuk objek. Jumlah elemen maksimum adalah 1.000.

NamedProperty

Pasangan nama-nilai yang diketik untuk data terstruktur. Jenis nilai harus sama dengan jenis yang terdaftar untuk properti name dalam definisi objek objectType.

Representasi JSON
{
  "name": string,

  // Union field value can be only one of the following:
  "integerValues": {
    object (NamedProperty.IntegerValues)
  },
  "doubleValues": {
    object (NamedProperty.DoubleValues)
  },
  "timestampValues": {
    object (NamedProperty.TimestampValues)
  },
  "booleanValue": boolean,
  "objectValues": {
    object (NamedProperty.ObjectValues)
  },
  "enumValues": {
    object (NamedProperty.EnumValues)
  },
  "dateValues": {
    object (NamedProperty.DateValues)
  },
  "textValues": {
    object (NamedProperty.TextValues)
  },
  "htmlValues": {
    object (NamedProperty.HtmlValues)
  }
  // End of list of possible types for union field value.
}
Kolom
name

string

Nama properti. Nama ini harus sesuai dengan nama properti yang didaftarkan untuk definisi objek dalam skema. Panjang maksimum yang diizinkan untuk properti ini adalah 256 karakter.

Kolom union value. Nilai properti bernama. Perhatikan bahwa properti hanya dapat memiliki nilai dari satu jenis. value hanya dapat berupa salah satu dari berikut:
integerValues

object (NamedProperty.IntegerValues)

doubleValues

object (NamedProperty.DoubleValues)

timestampValues

object (NamedProperty.TimestampValues)

booleanValue

boolean

objectValues

object (NamedProperty.ObjectValues)

enumValues

object (NamedProperty.EnumValues)

dateValues

object (NamedProperty.DateValues)

textValues

object (NamedProperty.TextValues)

htmlValues

object (NamedProperty.HtmlValues)

NamedProperty.IntegerValues

Daftar nilai bilangan bulat.

Representasi JSON
{
  "values": [
    string
  ]
}
Kolom
values[]

string (int64 format)

NamedProperty.DoubleValues

Daftar nilai ganda.

Representasi JSON
{
  "values": [
    number
  ]
}
Kolom
values[]

number

NamedProperty.TimestampValues

Daftar nilai stempel waktu.

Representasi JSON
{
  "values": [
    string
  ]
}
Kolom
values[]

string (Timestamp format)

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

NamedProperty.ObjectValues

Daftar nilai objek.

Representasi JSON
{
  "values": [
    {
      object (StructuredDataObject)
    }
  ]
}
Kolom
values[]

object (StructuredDataObject)

NamedProperty.EnumValues

Daftar nilai enum.

Representasi JSON
{
  "values": [
    string
  ]
}
Kolom
values[]

string

Panjang maksimum yang diizinkan untuk nilai string adalah 32 karakter.

NamedProperty.DateValues

Daftar nilai tanggal.

Representasi JSON
{
  "values": [
    {
      object (Date)
    }
  ]
}
Kolom
values[]

object (Date)

NamedProperty.TextValues

Daftar nilai teks.

Representasi JSON
{
  "values": [
    string
  ]
}
Kolom
values[]

string

Panjang maksimum yang diizinkan untuk nilai teks adalah 2.048 karakter.

NamedProperty.HtmlValues

Daftar nilai HTML.

Representasi JSON
{
  "values": [
    string
  ]
}
Kolom
values[]

string

Panjang maksimum yang diizinkan untuk nilai HTML adalah 2.048 karakter.

ItemContent

Konten item yang akan diindeks dan ditampilkan oleh Cloud Search. Hanya string berenkode UTF-8 yang diizinkan sebagai inlineContent. Jika konten diupload dan bukan biner, konten harus berenkode UTF-8.

Representasi JSON
{
  "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.
}
Kolom
contentFormat

enum (ItemContent.ContentFormat)

hash

string

Info hashing yang dihitung dan diberikan oleh klien API untuk konten. Dapat digunakan dengan metode items.push untuk menghitung status yang diubah. Panjang maksimum adalah 2.048 karakter.

Kolom union content.

content hanya dapat berupa salah satu dari yang berikut:

inlineContent

string (bytes format)

Konten yang disediakan sebagai inline dalam metode update. Panjang maksimum adalah 102.400 byte (100 KiB).

String berenkode base64.

contentDataRef

object (UploadItemRef)

Upload ID referensi konten yang diupload sebelumnya melalui metode tulis.

ItemContent.ContentFormat

Format konten. Jika formatnya RAW, konten harus dalam format yang ditentukan oleh mimeType.

Enum
UNSPECIFIED Nilai tidak valid.
HTML contentFormat adalah HTML.
TEXT contentFormat adalah teks bebas.
RAW contentFormat adalah byte mentah.

UploadItemRef

Merepresentasikan referensi sesi upload. Referensi ini dibuat melalui upload method. Referensi ini berlaku selama 30 hari setelah dibuat. Pembaruan konten item dapat merujuk pada konten yang diupload ini melalui contentDataRef.

Representasi JSON
{
  "name": string
}
Kolom
name

string

Nama referensi konten. Panjang maksimum adalah 2.048 karakter.

ItemStatus

Ini berisi status item dan error.

Representasi JSON
{
  "code": enum (ItemStatus.Code),
  "processingErrors": [
    {
      object (ProcessingError)
    }
  ],
  "repositoryErrors": [
    {
      object (RepositoryError)
    }
  ]
}
Kolom
code

enum (ItemStatus.Code)

Kode status.

processingErrors[]

object (ProcessingError)

Detail error jika item dalam status ERROR.

repositoryErrors[]

object (RepositoryError)

Error repositori dilaporkan oleh konektor.

ProcessingError

Representasi JSON
{
  "code": enum (ProcessingErrorCode),
  "errorMessage": string,
  "fieldViolations": [
    {
      object (FieldViolation)
    }
  ]
}
Kolom
code

enum (ProcessingErrorCode)

Kode error yang menunjukkan sifat error.

errorMessage

string

Deskripsi error.

fieldViolations[]

object (FieldViolation)

Jika kolom item tidak valid, kolom ini berisi detail tentang error validasi.

ProcessingErrorCode

Kode untuk menunjukkan error yang dialami selama pemrosesan item oleh server Cloud Search. Satu item dapat berisi beberapa error pemrosesan.

Enum
PROCESSING_ERROR_CODE_UNSPECIFIED Nilai saja. Gunakan nilai ini dalam Items.
MALFORMED_REQUEST ACL, metadata, atau konten item salah format atau tidak valid. Pelanggaran Kolom berisi detail selengkapnya tentang lokasi masalah.
UNSUPPORTED_CONTENT_FORMAT Format jumlah tidak didukung.
INDIRECT_BROKEN_ACL Item dengan informasi ACL yang tidak lengkap karena mewarisi item lain dengan ACL yang rusak atau memiliki grup dengan turunan yang tidak dipetakan.
ACL_CYCLE Grafik pewarisan ACL membentuk siklus.

FieldViolation

Representasi JSON
{
  "field": string,
  "description": string
}
Kolom
field

string

Jalur kolom dengan pelanggaran.

description

string

Deskripsi error.

RepositoryError

Error saat konektor berkomunikasi dengan repositori sumber.

Representasi JSON
{
  "type": enum (RepositoryError.Type),
  "httpStatusCode": integer,
  "errorMessage": string
}
Kolom
type

enum (RepositoryError.Type)

Jenis error.

httpStatusCode

integer

Kode error. Cocok dengan definisi kode status HTTP.

errorMessage

string

Pesan yang menjelaskan error. Panjang pesan maksimum yang diizinkan adalah 8.192 karakter.

RepositoryError.Type

Daftar kode error untuk masalah komunikasi dengan repositori.

Enum
UNKNOWN Error tidak diketahui.
NETWORK_ERROR Host tidak dikenal atau tidak dapat dijangkau.
DNS_ERROR Masalah DNS, misalnya server DNS tidak merespons.
CONNECTION_ERROR Tidak dapat terhubung ke server repositori.
AUTHENTICATION_ERROR Autentikasi gagal karena kredensial salah.
AUTHORIZATION_ERROR Akun layanan tidak diizinkan untuk repositori.
SERVER_ERROR Error server repositori.
QUOTA_EXCEEDED Kuota terlampaui.
SERVICE_UNAVAILABLE Server tidak tersedia untuk sementara.
CLIENT_ERROR Error terkait klien, seperti permintaan tidak valid dari konektor ke server repositori.

Item.ItemType

Enum
UNSPECIFIED
CONTENT_ITEM Item yang diindeks hanya untuk menyajikan informasi. Item ini tidak dapat dirujuk dalam kolom containerName atau inheritAclFrom.
CONTAINER_ITEM Item yang diindeks dan tujuannya adalah menyediakan item lain dengan ACL dan/atau berisi item lain.
VIRTUAL_CONTAINER_ITEM Item yang tidak diindeks, tetapi memiliki tujuan yang sama seperti CONTAINER_ITEM.

Metode

delete

Menghapus Item resource untuk nama resource yang ditentukan.

deleteQueueItems

Menghapus semua item dalam antrean.

get

Mendapatkan Item resource berdasarkan nama item.

index

Memperbarui ACL Item, metadata, dan konten.

list

Mencantumkan semua atau subset dari Item resources.

poll

Melakukan polling untuk item yang belum direservasi dari antrean pengindeksan dan menandai set sebagai dicadangkan, dimulai dari item yang memiliki stempel waktu terlama dari prioritas tertinggi ItemStatus.

push

Mendorong item ke antrean untuk polling dan update berikutnya.

unreserve

Membatalkan reservasi semua item dari antrean, sehingga semua item memenuhi syarat untuk diseleksi.

upload

Membuat sesi upload untuk mengupload konten item.