Method: projects.locations.dataStores.branches.documents.import

Importación en bloque de varios Document. El procesamiento de solicitudes puede ser síncrono. Se crean los elementos que no existen.

Nota: Es posible que se actualice correctamente un subconjunto de los Document.

Solicitud HTTP

POST https://discoveryengine.googleapis.com/v1beta/{parent=projects/*/locations/*/dataStores/*/branches/*}/documents:import

La URL utiliza la sintaxis de transcodificación a gRPC.

Parámetros de ruta

Parámetros
parent

string

Obligatorio. Nombre de recurso de la rama superior, como projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/branches/{branch}. Requiere permiso de creación o actualización.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos que presentan la siguiente estructura:

Representación JSON
{
  "errorConfig": {
    object (ImportErrorConfig)
  },
  "reconciliationMode": enum (ReconciliationMode),
  "updateMask": string,
  "autoGenerateIds": boolean,
  "idField": string,
  "forceRefreshContent": boolean,

  // Union field source can be only one of the following:
  "inlineSource": {
    object (InlineSource)
  },
  "gcsSource": {
    object (GcsSource)
  },
  "bigquerySource": {
    object (BigQuerySource)
  },
  "fhirStoreSource": {
    object (FhirStoreSource)
  },
  "spannerSource": {
    object (SpannerSource)
  },
  "cloudSqlSource": {
    object (CloudSqlSource)
  },
  "firestoreSource": {
    object (FirestoreSource)
  },
  "alloyDbSource": {
    object (AlloyDbSource)
  },
  "bigtableSource": {
    object (BigtableSource)
  }
  // End of list of possible types for union field source.
}
Campos
errorConfig

object (ImportErrorConfig)

La ubicación deseada de los errores producidos durante la importación.

reconciliationMode

enum (ReconciliationMode)

El modo de conciliación entre los documentos que ya existen y los que se van a importar. El valor predeterminado es ReconciliationMode.INCREMENTAL.

updateMask

string (FieldMask format)

Indica qué campos de los documentos importados proporcionados se van a actualizar. Si no se define, se actualizarán todos los campos de forma predeterminada.

Es una lista de nombres completos de campos separados por comas. Ejemplo: "user.displayName,photo"

autoGenerateIds

boolean

Indica si se deben generar automáticamente los IDs de los documentos si no se proporcionan.

Si se define como true, los Document.ids se generan automáticamente en función del hash de la carga útil, por lo que es posible que los IDs no sean coherentes durante varias importaciones. En ese caso, es muy recomendable usar ReconciliationMode.FULL para evitar el contenido duplicado. Si no se define o se le asigna el valor false, los Document.ids se deben especificar mediante idField. De lo contrario, no se podrán importar los documentos sin IDs.

Fuentes de datos admitidas:

idField

string

Este campo indica el campo o la columna de ID que se va a usar como ID único de los documentos.

En GcsSource, es la clave del campo JSON. Por ejemplo, my_id para JSON {"my_id": "some_uuid"}. En otros casos, puede ser el nombre de la columna de la tabla en la que se almacenan los IDs únicos.

Los valores del campo JSON o de la columna de la tabla se usan como Document.ids. El campo JSON o la columna de la tabla deben ser de tipo cadena y los valores deben definirse como cadenas válidas que cumplan la RFC-1034 con una longitud de entre 1 y 63 caracteres. De lo contrario, no se podrán importar los documentos sin IDs válidos.

Solo debes definir este campo si autoGenerateIds no tiene ningún valor asignado o si se le asigna el valor false. De lo contrario, se producirá un error INVALID_ARGUMENT.

Si no se define, se usará el valor predeterminado Id al importar datos de las fuentes de datos permitidas.

Fuentes de datos admitidas:

forceRefreshContent

boolean

Opcional. Indica si se debe forzar la actualización del contenido no estructurado de los documentos.

Si se asigna el valor true, la parte del contenido de los documentos se actualizará independientemente del estado de actualización del contenido de referencia.

Campo de unión source. Obligatorio. La fuente de la entrada. source solo puede ser una de estas dos opciones:
inlineSource

object (InlineSource)

La fuente insertada del contenido de entrada de los documentos.

gcsSource

object (GcsSource)

Ubicación de Cloud Storage del contenido de entrada.

bigquerySource

object (BigQuerySource)

Fuente de entrada de BigQuery.

fhirStoreSource

object (FhirStoreSource)

Fuente de entrada de FhirStore.

spannerSource

object (SpannerSource)

Fuente de entrada de Spanner.

cloudSqlSource

object (CloudSqlSource)

Fuente de entrada de Cloud SQL.

firestoreSource

object (FirestoreSource)

Fuente de entrada de Firestore.

alloyDbSource

object (AlloyDbSource)

Fuente de entrada de AlloyDB.

bigtableSource

object (BigtableSource)

Fuente de entrada de Cloud Bigtable.

Cuerpo de la respuesta

Si la solicitud se hace correctamente, en el cuerpo de la respuesta se incluye una instancia de Operation.

Permisos de autorización

Debes disponer de uno de los siguientes permisos de OAuth:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/discoveryengine.readwrite

Para obtener más información, consulta el Authentication Overview.

Permisos de IAM

Requiere el siguiente permiso de gestión de identidades y accesos en el recurso parent:

  • discoveryengine.documents.import

Para obtener más información, consulta la documentación de gestión de identidades y accesos.