Recurso: Document
El documento captura toda la información de metadatos sin procesar de los elementos que se recomendarán o buscarán.
| Representación JSON |
|---|
{ "name": string, "id": string, "schemaId": string, "content": { object ( |
| Campos | |
|---|---|
name |
Inmutable. Es el nombre completo del recurso del documento. Formato: Este campo debe ser una cadena codificada en UTF-8 con un límite de 1,024 caracteres. |
id |
Inmutable. Es el identificador del documento. El ID debe cumplir con el estándar RFC-1034 y tener una longitud máxima de 128 caracteres. |
schemaId |
Es el identificador del esquema ubicado en el mismo almacén de datos. |
content |
Son los datos no estructurados vinculados a este documento. El contenido solo se puede establecer y se debe establecer si este documento se encuentra en un almacén de datos |
parentDocumentId |
Es el identificador del documento principal. Actualmente, admite como máximo una jerarquía de documentos de dos niveles. El ID debe cumplir con el estándar RFC-1034 y tener un límite de 63 caracteres. |
derivedStructData |
Solo salida. Este campo es OUTPUT_ONLY. Contiene datos derivados que no se encuentran en el documento de entrada original. |
aclInfo |
Es la información de control de acceso del documento. |
indexTime |
Solo salida. Fecha y hora en la que se indexó el documento por última vez. Si este campo se propaga, significa que el documento se indexó. Si bien los documentos suelen permitir la búsqueda en cuestión de segundos luego de la indexación, a veces puede tardar hasta unas horas. Si este campo no se completa, significa que el documento nunca se indexó. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
indexStatus |
Solo salida. Es el estado de indexación del documento.
|
Representación de datos Se debe proporcionar struct_data o json_data; de lo contrario, se arrojará un error INVALID_ARGUMENT. A continuación, se incluye una lista de campos mutuamente excluyentes. En una respuesta, se establecerá, como máximo, uno de los siguientes campos: |
|
structData |
Son los datos estructurados en formato JSON del documento. Debe cumplir con el |
jsonData |
Es la representación de la cadena JSON del documento. Debe cumplir con el |
| Fin de los campos mutuamente exclusivos. | |
Contenido
Son los datos no estructurados vinculados a este documento.
| Representación JSON |
|---|
{ "mimeType": string, // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "rawBytes": string, "uri": string // End of mutually exclusive fields. } |
| Campos | |
|---|---|
mimeType |
Es el tipo de MIME del contenido. Tipos compatibles:
Los siguientes tipos solo se admiten si el analizador de diseño está habilitado en el almacén de datos:
Consulta https://www.iana.org/assignments/media-types/media-types.xhtml. |
| Es el contenido del documento no estructurado. A continuación, se incluye una lista de campos mutuamente excluyentes. En una respuesta, se establecerá, como máximo, uno de los siguientes campos: | |
rawBytes |
Es el contenido representado como un flujo de bytes. La longitud máxima es de 1,000,000 de bytes (1 MB / 0.95 MiB). Nota: Al igual que con todos los campos de Es una cadena codificada en Base64. |
uri |
Es el URI del contenido. Solo se admiten los URI de Cloud Storage (p.ej., |
| Fin de los campos mutuamente exclusivos. | |
AclInfo
Es la información de la LCA del documento.
| Representación JSON |
|---|
{
"readers": [
{
object ( |
| Campos | |
|---|---|
readers[] |
Son los lectores del documento. |
AccessRestriction
Es un AclRestriction para modelar restricciones de herencia complejas.
Ejemplo: Modelado de una herencia de "Ambos permisos", en la que, para acceder a un documento secundario, el usuario debe tener acceso al documento principal.
Jerarquía del documento: Space_S --> Page_P.
Lectores: Space_S: group_1, user_1 Page_P: group_2, group_3, user_2
Restricción de ACL de Space_S: { "aclInfo": { "lectores": [{ "principals": [{ "groupId": "group_1"}, { "userId": "user_1"} ] } ] }}
Restricción de ACL de Page_P. { "aclInfo": { "readers": [ { "principals": [ { "groupId": "group_2" }, { "groupId": "group_3" }, { "userId": "user_2" } ], }, { "principals": [ { "groupId": "group_1" }, { "userId": "user_1" } ], } ] } }
| Representación JSON |
|---|
{
"principals": [
{
object ( |
| Campos | |
|---|---|
principals[] |
Es la lista de principales. |
idpWide |
Todos los usuarios dentro del proveedor de identidad. |
Principal
Es el identificador principal de un usuario o un grupo.
| Representación JSON |
|---|
{ // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "userId": string, "groupId": string, "externalEntityId": string // End of mutually exclusive fields. } |
| Campos | |
|---|---|
| Es el campo de unión principal. La principal puede ser un usuario o un grupo. A continuación, se incluye una lista de campos mutuamente excluyentes. En una respuesta, se establecerá, como máximo, uno de los siguientes campos: | |
userId |
Es el identificador del usuario. En el caso de las cuentas de usuario de Google Workspace, userId debe ser el correo electrónico del usuario de Google Workspace. En el caso de las cuentas de usuario del proveedor de identidad que no son de Google, userId es el identificador de usuario asignado que se configuró durante la configuración de workforcepool. |
groupId |
Es el identificador del grupo. En el caso de las cuentas de usuario de Google Workspace, groupId debe ser el correo electrónico del grupo de Google Workspace. Para las cuentas de usuario de proveedores de identidad que no son de Google, groupId es el identificador de grupo asignado que se configuró durante la configuración de workforcepool. |
externalEntityId |
Para identidades de aplicaciones de terceros que no están presentes en el proveedor de identidad del cliente. |
| Fin de los campos mutuamente exclusivos. | |
IndexStatus
Es el estado de indexación del documento.
| Representación JSON |
|---|
{
"indexTime": string,
"errorSamples": [
{
object ( |
| Campos | |
|---|---|
indexTime |
Es la fecha y hora en que se indexó el documento. Si este campo se propaga, significa que el documento se indexó. Si bien los documentos suelen permitir la búsqueda en cuestión de segundos luego de la indexación, a veces puede tardar hasta unas horas. Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
errorSamples[] |
Es una muestra de los errores que se encontraron durante la indexación del documento. Si este campo está propagado, el documento no se indexó debido a errores. |
pendingMessage |
Inmutable. El mensaje indica que el índice del documento está en curso. Si este campo se completa, el índice del documento está pendiente. |
Métodos |
|
|---|---|
|
Crea un Document. |
|
Borra un Document. |
|
Obtienes una Document. |
|
Importación masiva de varios Document. |
|
Obtiene una lista de Documents. |
|
Actualiza un Document. |
|
Borra de forma permanente todos los Documents seleccionados en una rama. |