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

Importation groupée de plusieurs Document. Le traitement des demandes peut être synchrone. Les éléments inexistants sont créés.

Remarque : Il est possible qu'un sous-ensemble de Document soit mis à jour.

Requête HTTP


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

Les URL utilisent la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
parent

string

Obligatoire. Nom de la ressource de branche parente, par exemple projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/branches/{branch}. Nécessite une autorisation de création/modification.

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation 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.
}
Champs
errorConfig

object (ImportErrorConfig)

Emplacement souhaité des erreurs survenues lors de l'importation.

reconciliationMode

enum (ReconciliationMode)

Mode de rapprochement entre les documents existants et ceux à importer. La valeur par défaut est ReconciliationMode.INCREMENTAL.

updateMask

string (FieldMask format)

Indique les champs des documents importés fournis à mettre à jour. Si ce paramètre n'est pas défini, la valeur par défaut consiste à mettre à jour tous les champs.

Il s'agit d'une liste de noms de champs complets séparés par une virgule. Exemple : "user.displayName,photo".

autoGenerateIds

boolean

Indique si les ID des documents doivent être générés automatiquement en leur absence.

Si la valeur est définie sur true, les Document.id sont générés automatiquement en fonction du hachage de la charge utile. Les ID peuvent ne pas être cohérents lors de plusieurs importations. Dans ce cas, il est vivement recommandé d'utiliser ReconciliationMode.FULL pour éviter les contenus en double. Si la valeur n'est pas définie ou est définie sur false, les Document.id doivent être spécifiés à l'aide de idField. Sinon, les documents sans ID ne peuvent pas être importés.

Sources de données compatibles :

idField

string

Ce champ indique le champ ou la colonne d'ID à utiliser comme identifiants uniques des documents.

Pour GcsSource, il s'agit de la clé du champ JSON. Par exemple, my_id pour JSON {"my_id": "some_uuid"}. Pour d'autres, il peut s'agir du nom de la colonne de la table dans laquelle les identifiants uniques sont stockés.

Les valeurs du champ JSON ou de la colonne de tableau sont utilisées comme Document.id. Le champ JSON ou la colonne de tableau doivent être de type chaîne, et les valeurs doivent être définies comme des chaînes valides conformes à la norme RFC-1034 et comporter entre 1 et 63 caractères. Sinon, les documents sans ID valides ne seront pas importés.

Ne définissez ce champ que lorsque autoGenerateIds n'est pas défini ou est défini sur false. Dans le cas contraire, une erreur INVALID_ARGUMENT est générée.

Si elle n'est pas définie, la valeur par défaut Id est utilisée lors de l'importation à partir des sources de données autorisées.

Sources de données compatibles :

forceRefreshContent

boolean

Facultatif. Indique si le contenu non structuré des documents doit être actualisé de force.

Si la valeur est définie sur true, la partie contenu des documents sera actualisée, quel que soit l'état de mise à jour du contenu référencé.

Obligatoire. Source de l'entrée. Vous trouverez ci-dessous la liste des champs mutuellement exclusifs. Au maximum, un seul des champs sera défini dans une réponse :
inlineSource

object (InlineSource)

Source intégrée pour le contenu d'entrée des documents.

gcsSource

object (GcsSource)

Emplacement Cloud Storage du contenu d'entrée.

bigquerySource

object (BigQuerySource)

Source d'entrée BigQuery.

fhirStoreSource

object (FhirStoreSource)

Source d'entrée FhirStore.

spannerSource

object (SpannerSource)

Source d'entrée Spanner.

cloudSqlSource

object (CloudSqlSource)

Source d'entrée Cloud SQL.

firestoreSource

object (FirestoreSource)

Source d'entrée Firestore.

alloyDbSource

object (AlloyDbSource)

Source d'entrée AlloyDB.

bigtableSource

object (BigtableSource)

Source d'entrée Cloud Bigtable.

Fin des champs qui s'excluent mutuellement.

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient une instance de Operation.

Niveaux d'accès des autorisations

Nécessite l'un des niveaux d'accès OAuth suivants :

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

Pour plus d'informations, consultez la page Authentication Overview.

Autorisations IAM

Nécessite l'autorisation IAM suivante sur la ressource parent :

  • discoveryengine.documents.import

Pour en savoir plus, consultez la documentation IAM.