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

Ressource: Document

Im Dokument werden alle Rohmetadateninformationen von Elementen erfasst, die empfohlen oder gesucht werden sollen.

JSON-Darstellung
{
  "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.
}
Felder
name

string

Nicht veränderbar. Der vollständige Ressourcenname des Dokuments. Format: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/branches/{branch}/documents/{documentId}.

Dieses Feld muss ein UTF-8-codierter String mit einer Längenbeschränkung von 1.024 Zeichen sein.

id

string

Nicht veränderbar. Die Kennung des Dokuments.

Die ID sollte dem RFC-1034-Standard entsprechen und darf maximal 128 Zeichen lang sein.

schemaId

string

Die Kennung des Schemas, das sich im selben Datenspeicher befindet.

content

object (Content)

Die mit diesem Dokument verknüpften unstrukturierten Daten. Inhalte können nur festgelegt werden und müssen festgelegt werden, wenn sich dieses Dokument in einem CONTENT_REQUIRED-Datenspeicher befindet.

parentDocumentId

string

Die Kennung des übergeordneten Dokuments. Derzeit wird maximal eine Dokumenthierarchie mit zwei Ebenen unterstützt.

Die ID sollte dem RFC-1034-Standard entsprechen und darf maximal 63 Zeichen lang sein.

derivedStructData

object (Struct format)

Nur Ausgabe. Dieses Feld dient nur der Ausgabe. Es enthält abgeleitete Daten, die nicht im ursprünglichen Eingabedokument enthalten sind.

aclInfo

object (AclInfo)

Informationen zur Zugriffssteuerung für das Dokument.

indexTime

string (Timestamp format)

Nur Ausgabe. Der Zeitpunkt der letzten Indexierung des Dokuments. Wenn dieses Feld festgelegt ist, kann das Dokument in den Suchergebnissen zurückgegeben werden.

Dieses Feld dient nur der Ausgabe. Wenn dieses Feld nicht ausgefüllt ist, bedeutet das, dass das Dokument noch nie indexiert wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

indexStatus

object (IndexStatus)

Nur Ausgabe. Der Indexstatus des Dokuments.

  • Wenn das Dokument erfolgreich indexiert wurde, wird das Feld „indexTime“ ausgefüllt.
  • Andernfalls wird das Feld „errorSamples“ ausgefüllt, wenn das Dokument aufgrund von Fehlern nicht indexiert wird.
  • Andernfalls wird das Feld „pendingMessage“ ausgefüllt, wenn der Index des Dokuments gerade erstellt wird.
Union-Feld data. Datendarstellung Du musst entweder struct_data oder json_data angeben. Andernfalls wird der Fehler INVALID_ARGUMENT ausgegeben. Für data ist nur einer der folgenden Werte zulässig:
structData

object (Struct format)

Die strukturierten JSON-Daten für das Dokument. Sie muss der registrierten Schema entsprechen, andernfalls wird ein INVALID_ARGUMENT-Fehler ausgegeben.

jsonData

string

Die JSON-String-Darstellung des Dokuments. Sie muss der registrierten Schema entsprechen, andernfalls wird ein INVALID_ARGUMENT-Fehler ausgegeben.

Inhalt

Unstrukturierte Daten, die mit diesem Dokument verknüpft sind.

JSON-Darstellung
{
  "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.
}
Felder
mimeType

string

Der MIME-Typ des Inhalts. Unterstützte Typen:

  • application/pdf (PDF, derzeit werden nur native PDFs unterstützt)
  • text/html (HTML)
  • text/plain (TXT)
  • application/xml oder 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)

Die folgenden Typen werden nur unterstützt, wenn der Layoutparser im Datenspeicher aktiviert ist:

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

Weitere Informationen finden Sie unter https://www.iana.org/assignments/media-types/media-types.xhtml.

Union-Feld content. Der Inhalt des unstrukturierten Dokuments. Für content ist nur einer der folgenden Werte zulässig:
rawBytes

string (bytes format)

Der Inhalt als Bytestream. Die maximale Länge beträgt 1.000.000 Bytes (1 MB / ~0,95 MiB).

Hinweis: Wie bei allen bytes-Feldern wird dieses Feld in Protocol Buffers als reiner Binärwert und in JSON als base64-codierter String dargestellt. abc123!?$*&()'-=@~ sollte in JSON beispielsweise als YWJjMTIzIT8kKiYoKSctPUB+ dargestellt werden. Weitere Informationen finden Sie unter https://developers.google.com/protocol-buffers/docs/proto3#json.

Ein base64-codierter String.

uri

string

Der URI des Inhalts. Es werden nur Cloud Storage-URIs unterstützt, z.B. gs://bucket-name/path/to/file. Die maximale Dateigröße beträgt 2, 5 MB für textbasierte Formate und 200 MB für andere Formate.

AclInfo

ACL-Informationen des Dokuments.

JSON-Darstellung
{
  "readers": [
    {
      object (AccessRestriction)
    }
  ]
}
Felder
readers[]

object (AccessRestriction)

Leser des Dokuments.

AccessRestriction

AclRestriction zum Modellieren komplexer Einschränkungen für die Vererbung.

Beispiel: Modellieren einer „Both Permit“-Vererbung, bei der ein Nutzer Zugriff auf das übergeordnete Dokument benötigt, um auf ein untergeordnetes Dokument zugreifen zu können.

Dokumenthierarchie: Space_S –> Page_P.

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

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

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

JSON-Darstellung
{
  "principals": [
    {
      object (Principal)
    }
  ],
  "idpWide": boolean
}
Felder
principals[]

object (Principal)

Liste der Hauptkonten.

idpWide

boolean

Alle Nutzer innerhalb des Identitätsanbieters.

Hauptkonto

Hauptkonto-ID eines Nutzers oder einer Gruppe.

JSON-Darstellung
{

  // 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.
}
Felder
Union-Feld principal. Union-Feld „principal“. Das Hauptkonto kann ein Nutzer oder eine Gruppe sein. Für principal ist nur einer der folgenden Werte zulässig:
userId

string

Nutzer-ID. Bei einem Google Workspace-Nutzerkonto sollte „userId“ die E‑Mail-Adresse des Google Workspace-Nutzers sein. Für ein Nutzerkonto eines Nicht-Google-Identitätsanbieters ist „userId“ die zugeordnete Nutzer-ID, die während der Konfiguration des Personalpools konfiguriert wurde.

groupId

string

Gruppen-ID. Bei einem Google Workspace-Nutzerkonto sollte „groupId“ die E‑Mail-Adresse der Google Workspace-Gruppe sein. Bei einem Nutzerkonto eines Nicht-Google-Identitätsanbieters ist „groupId“ die zugeordnete Gruppen-ID, die während der Konfiguration des Personalpools konfiguriert wurde.

externalEntityId

string

Für Identitäten von Drittanbieteranwendungen, die nicht im Identitätsanbieter des Kunden vorhanden sind.

IndexStatus

Indexierungsstatus des Dokuments.

JSON-Darstellung
{
  "indexTime": string,
  "errorSamples": [
    {
      object (Status)
    }
  ],
  "pendingMessage": string
}
Felder
indexTime

string (Timestamp format)

Der Zeitpunkt, zu dem das Dokument indexiert wurde. Wenn dieses Feld ausgefüllt ist, wurde das Dokument indexiert.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

errorSamples[]

object (Status)

Ein Beispiel für Fehler, die beim Indexieren des Dokuments aufgetreten sind. Wenn dieses Feld ausgefüllt ist, wird das Dokument aufgrund von Fehlern nicht indexiert.

pendingMessage

string

Nicht veränderbar. Die Meldung gibt an, dass der Dokumentindex erstellt wird. Wenn dieses Feld ausgefüllt ist, wird der Dokumentindex noch erstellt.

Methoden

create

Erstellt einen Document.

delete

Löscht ein Document.

get

Erstellt einen Document.

import

Bulk-Import mehrerer Documents.

list

Ruft eine Liste von Document ab.

patch

Aktualisiert ein Document.

purge

Löscht alle ausgewählten Documents in einem Zweig endgültig.