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

Importação em massa de vários Documents. O processamento de solicitações pode ser síncrono. Os itens que não existem são criados.

Observação: é possível que um subconjunto dos Documents seja atualizado.

Solicitação HTTP


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

Os URLs usam a sintaxe de Transcodificação gRPC.

Parâmetros de caminho

Parâmetros
parent

string

Obrigatório. O nome do recurso da ramificação principal, como projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/branches/{branch}. Requer permissão de criação/atualização.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "errorConfig": {
    object (ImportErrorConfig)
  },
  "reconciliationMode": enum (ReconciliationMode),
  "updateMask": string,
  "autoGenerateIds": boolean,
  "idField": string,
  "forceRefreshContent": boolean,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "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 mutually exclusive fields.
}
Campos
errorConfig

object (ImportErrorConfig)

O local desejado dos erros ocorridos durante a importação.

reconciliationMode

enum (ReconciliationMode)

O modo de conciliação entre os documentos atuais e os que serão importados. O valor padrão é ReconciliationMode.INCREMENTAL.

updateMask

string (FieldMask format)

Indica quais campos dos documentos importados fornecidos precisam ser atualizados. Se não for definido, o padrão será atualizar todos os campos.

Uma lista separada por vírgulas de nomes de campos totalmente qualificados. Exemplo: "user.displayName,photo".

autoGenerateIds

boolean

Se os IDs dos documentos serão gerados automaticamente se estiverem ausentes.

Se definido como true, os Document.ids serão gerados automaticamente com base no hash do payload, e os IDs poderão não ser consistentes durante várias importações. Nesse caso, é altamente recomendável usar ReconciliationMode.FULL para evitar conteúdo duplicado. Se não estiver definido ou estiver definido como false, os Document.ids precisarão ser especificados usando idField. Caso contrário, os documentos sem IDs não serão importados.

Fontes de dados compatíveis:

idField

string

O campo indica o campo ou a coluna de ID a ser usada como IDs exclusivos dos documentos.

Para GcsSource, é a chave do campo JSON. Por exemplo, my_id para JSON {"my_id": "some_uuid"}. Para outros, pode ser o nome da coluna da tabela em que os IDs exclusivos estão armazenados.

Os valores do campo JSON ou da coluna da tabela são usados como Document.ids. O campo JSON ou a coluna da tabela precisa ser do tipo string, e os valores precisam ser definidos como strings válidas de acordo com a RFC-1034 com 1 a 63 caracteres. Caso contrário, os documentos sem IDs válidos não serão importados.

Defina esse campo somente quando autoGenerateIds não estiver definido ou estiver definido como false. Caso contrário, um erro INVALID_ARGUMENT será gerado.

Se não estiver definido, um valor padrão Id será usado ao importar das fontes de dados permitidas.

Fontes de dados compatíveis:

forceRefreshContent

boolean

Opcional. Se é necessário forçar a atualização do conteúdo não estruturado dos documentos.

Se definido como true, a parte de conteúdo dos documentos será atualizada, independente do status de atualização do conteúdo referenciado.

Obrigatório. A origem da entrada. Confira a seguir uma lista de campos mutuamente exclusivos. No máximo um dos campos será definido em uma resposta:
inlineSource

object (InlineSource)

A origem inline do conteúdo de entrada para documentos.

gcsSource

object (GcsSource)

Local do Cloud Storage para o conteúdo de entrada.

bigquerySource

object (BigQuerySource)

Origem de entrada do BigQuery.

fhirStoreSource

object (FhirStoreSource)

Origem da entrada do FhirStore.

spannerSource

object (SpannerSource)

Origem de entrada do Spanner.

cloudSqlSource

object (CloudSqlSource)

Origem de entrada do Cloud SQL.

firestoreSource

object (FirestoreSource)

Origem de entrada do Firestore.

alloyDbSource

object (AlloyDbSource)

Origem de entrada do AlloyDB.

bigtableSource

object (BigtableSource)

Origem de entrada do Cloud Bigtable.

Fim dos campos mutuamente exclusivos.

Corpo da resposta

Se a solicitação for bem-sucedida, o corpo da resposta conterá uma instância de Operation.

Escopos de autorização

Requer um dos seguintes escopos do OAuth:

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

Para mais informações, consulte Authentication Overview.

Permissões do IAM

Requer a seguinte permissão do IAM no recurso parent:

  • discoveryengine.documents.import

Para mais informações, consulte a documentação do IAM.