REST Resource: projects.locations.collections.dataStores.branches.documents

Resource: Document

Dokumen mencatat semua informasi metadata mentah item yang akan direkomendasikan atau ditelusuri.

Representasi JSON
{
  "name": string,
  "id": string,
  "schemaId": string,
  "content": {
    object (Content)
  },
  "parentDocumentId": string,
  "derivedStructData": {
    object
  },
  "aclInfo": {
    object (AclInfo)
  },
  "indexTime": string,
  "indexStatus": {
    object (IndexStatus)
  },

  // Union field data can be only one of the following:
  "structData": {
    object
  },
  "jsonData": string
  // End of list of possible types for union field data.
}
Kolom
name

string

Tidak dapat diubah. Nama lengkap resource dokumen. Format projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/branches/{branch}/documents/{documentId}.

Kolom ini harus berupa string berenkode UTF-8 dengan batas panjang 1.024 karakter.

id

string

Tidak dapat diubah. ID dokumen.

ID harus sesuai dengan standar RFC-1034 dengan batas panjang 128 karakter.

schemaId

string

ID skema yang berada di penyimpanan data yang sama.

content

object (Content)

Data tidak terstruktur yang ditautkan ke dokumen ini. Konten hanya dapat disetel dan harus disetel jika dokumen ini berada di penyimpanan data CONTENT_REQUIRED.

parentDocumentId

string

ID dokumen induk. Saat ini mendukung hierarki dokumen paling banyak dua tingkat.

ID harus sesuai dengan standar RFC-1034 dengan batas panjang 63 karakter.

derivedStructData

object (Struct format)

Hanya output. Kolom ini bersifat OUTPUT_ONLY. Objek ini berisi data turunan yang tidak ada dalam dokumen input asli.

aclInfo

object (AclInfo)

Informasi kontrol akses untuk dokumen.

indexTime

string (Timestamp format)

Hanya output. Terakhir kali dokumen diindeks. Jika kolom ini disetel, dokumen dapat ditampilkan dalam hasil penelusuran.

Kolom ini bersifat OUTPUT_ONLY. Jika kolom ini tidak diisi, artinya dokumen belum pernah diindeks.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

indexStatus

object (IndexStatus)

Hanya output. Status indeks dokumen.

  • Jika dokumen berhasil diindeks, kolom indexTime akan diisi.
  • Jika tidak, jika dokumen tidak diindeks karena error, kolom errorSamples akan diisi.
  • Atau, jika pengindeksan dokumen sedang berlangsung, kolom pendingMessage akan diisi.
Kolom union data. Representasi data. Salah satu dari struct_data atau json_data harus diberikan. Jika tidak, error INVALID_ARGUMENT akan ditampilkan. data hanya dapat berupa salah satu dari hal berikut:
structData

object (Struct format)

Data JSON terstruktur untuk dokumen. Harus sesuai dengan Schema yang terdaftar atau error INVALID_ARGUMENT akan ditampilkan.

jsonData

string

Representasi string JSON dokumen. Harus sesuai dengan Schema yang terdaftar atau error INVALID_ARGUMENT akan ditampilkan.

Konten

Data tidak terstruktur yang ditautkan ke dokumen ini.

Representasi JSON
{
  "mimeType": string,

  // Union field content can be only one of the following:
  "rawBytes": string,
  "uri": string
  // End of list of possible types for union field content.
}
Kolom
mimeType

string

Jenis MIME konten. Jenis yang didukung:

  • application/pdf (PDF, hanya PDF asli yang didukung untuk saat ini)
  • text/html (HTML)
  • text/plain (TXT)
  • application/xml atau text/xml (XML)
  • application/json (JSON)
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document (DOCX)
  • application/vnd.openxmlformats-officedocument.presentationml.presentation (PPTX)
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (XLSX)
  • application/vnd.ms-excel.sheet.macroenabled.12 (XLSM)

Jenis berikut hanya didukung jika parser tata letak diaktifkan di penyimpanan data:

  • image/bmp (BMP)
  • image/gif (GIF)
  • image/jpeg (JPEG)
  • image/png (PNG)
  • image/tiff (TIFF)

Lihat https://www.iana.org/assignments/media-types/media-types.xhtml.

Kolom union content. Isi dokumen tidak terstruktur. content hanya ada berupa salah satu diantara berikut:
rawBytes

string (bytes format)

Konten yang direpresentasikan sebagai aliran byte. Panjang maksimum adalah 1.000.000 byte (1 MB / ~0,95 MiB).

Catatan: Seperti semua kolom bytes, kolom ini direpresentasikan sebagai biner murni di Protocol Buffers dan string berenkode base64 di JSON. Misalnya, abc123!?$*&()'-=@~ harus ditampilkan sebagai YWJjMTIzIT8kKiYoKSctPUB+ dalam JSON. Lihat https://developers.google.com/protocol-buffers/docs/proto3#json.

String berenkode base64.

uri

string

URI konten. Hanya URI Cloud Storage (misalnya, gs://bucket-name/path/to/file) yang didukung. Ukuran file maksimum adalah 2,5 MB untuk format berbasis teks, 200 MB untuk format lainnya.

AclInfo

Informasi ACL Dokumen.

Representasi JSON
{
  "readers": [
    {
      object (AccessRestriction)
    }
  ]
}
Kolom
readers[]

object (AccessRestriction)

Pembaca dokumen.

AccessRestriction

AclRestriction untuk memodelkan batasan pewarisan yang kompleks.

Contoh: Memodelkan pewarisan "Izinkan Keduanya", di mana untuk mengakses dokumen turunan, pengguna harus memiliki akses ke dokumen induk.

Hierarki Dokumen - Space_S --> Page_P.

Pembaca: Space_S: group_1, user_1 Page_P: group_2, group_3, user_2

Pembatasan ACL Space_S - { "aclInfo": { "readers": [ { "principals": [ { "groupId": "group_1" }, { "userId": "user_1" } ] } ] } }

Pembatasan ACL Page_P. { "aclInfo": { "readers": [ { "principals": [ { "groupId": "group_2" }, { "groupId": "group_3" }, { "userId": "user_2" } ], }, { "principals": [ { "groupId": "group_1" }, { "userId": "user_1" } ], } ] } }

Representasi JSON
{
  "principals": [
    {
      object (Principal)
    }
  ],
  "idpWide": boolean
}
Kolom
principals[]

object (Principal)

Daftar akun utama.

idpWide

boolean

Semua pengguna dalam Penyedia Identitas.

Akun utama

ID utama pengguna atau grup.

Representasi JSON
{

  // Union field principal can be only one of the following:
  "userId": string,
  "groupId": string,
  "externalEntityId": string
  // End of list of possible types for union field principal.
}
Kolom
Kolom union principal. Principal kolom gabungan. Akun utama dapat berupa pengguna atau grup. principal hanya ada berupa salah satu diantara berikut:
userId

string

ID pengguna. Untuk akun pengguna Google Workspace, userId harus berupa email pengguna Google Workspace. Untuk akun pengguna penyedia identitas non-Google, userId adalah ID pengguna yang dipetakan dan dikonfigurasi selama konfigurasi workforcepool.

groupId

string

ID grup. Untuk akun pengguna Google Workspace, groupId harus berupa email grup Google Workspace. Untuk akun pengguna penyedia identitas non-Google, groupId adalah ID grup yang dipetakan dan dikonfigurasi selama konfigurasi workforcepool.

externalEntityId

string

Untuk identitas aplikasi pihak ketiga yang tidak ada di penyedia identitas pelanggan.

IndexStatus

Status indeks dokumen.

Representasi JSON
{
  "indexTime": string,
  "errorSamples": [
    {
      object (Status)
    }
  ],
  "pendingMessage": string
}
Kolom
indexTime

string (Timestamp format)

Waktu saat dokumen diindeks. Jika kolom ini terisi, berarti dokumen telah diindeks.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

errorSamples[]

object (Status)

Contoh error yang terjadi saat mengindeks dokumen. Jika kolom ini diisi, dokumen tidak diindeks karena error.

pendingMessage

string

Tidak dapat diubah. Pesan menunjukkan bahwa pengindeksan dokumen sedang berlangsung. Jika kolom ini diisi, indeks dokumen tertunda.

Metode

create

Membuat Document.

delete

Menghapus Document.

get

Mendapatkan Document.

import

Impor massal beberapa Document.

list

Mendapatkan daftar Document.

patch

Memperbarui Document.

purge

Menghapus semua Document yang dipilih secara permanen di cabang.