REST Resource: projects.locations.collections.dataStores

Resource: DataStore

DataStore captures global settings and configs at the DataStore level.

JSON representation
{
  "name": string,
  "displayName": string,
  "industryVertical": enum (IndustryVertical),
  "solutionTypes": [
    enum (SolutionType)
  ],
  "defaultSchemaId": string,
  "contentConfig": enum (ContentConfig),
  "createTime": string,
  "idpConfig": {
    object (IdpConfig)
  },
  "aclEnabled": boolean,
  "documentProcessingConfig": {
    object (DocumentProcessingConfig)
  },
  "startingSchema": {
    object (Schema)
  }
}
Fields
name

string

Immutable. The full resource name of the data store. Format: projects/{project}/locations/{location}/collections/{collectionId}/dataStores/{dataStoreId}.

This field must be a UTF-8 encoded string with a length limit of 1024 characters.

displayName

string

Required. The data store display name.

This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned.

industryVertical

enum (IndustryVertical)

Immutable. The industry vertical that the data store registers.

solutionTypes[]

enum (SolutionType)

The solutions that the data store enrolls. Available solutions for each industryVertical:

  • MEDIA: SOLUTION_TYPE_RECOMMENDATION and SOLUTION_TYPE_SEARCH.
  • SITE_SEARCH: SOLUTION_TYPE_SEARCH is automatically enrolled. Other solutions cannot be enrolled.
defaultSchemaId

string

Output only. The id of the default Schema asscociated to this data store.

contentConfig

enum (ContentConfig)

Immutable. The content config of the data store. If this field is unset, the server behavior defaults to ContentConfig.NO_CONTENT.

createTime

string (Timestamp format)

Output only. Timestamp the DataStore was created at.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

idpConfig

object (IdpConfig)

Output only. Data store level identity provider config.

aclEnabled

boolean

Immutable. Whether data in the DataStore has ACL information. If set to true, the source data must have ACL. ACL will be ingested when data is ingested by DocumentService.ImportDocuments methods.

When ACL is enabled for the DataStore, Document can't be accessed by calling DocumentService.GetDocument or DocumentService.ListDocuments.

Currently ACL is only supported in GENERIC industry vertical with non-PUBLIC_WEBSITE content config.

documentProcessingConfig

object (DocumentProcessingConfig)

Configuration for Document understanding and enrichment.

startingSchema

object (Schema)

The start schema to use for this DataStore when provisioning it. If unset, a default vertical specialized schema will be used.

This field is only used by [dataStores.create][] API, and will be ignored if used in other APIs. This field will be omitted from all API responses including [dataStores.create][] API. To retrieve a schema of a DataStore, use SchemaService.GetSchema API instead.

The provided schema will be validated against certain rules on schema. Learn more from this doc.

ContentConfig

Content config of the data store.

Enums
CONTENT_CONFIG_UNSPECIFIED Default value.
NO_CONTENT Only contains documents without any Document.content.
CONTENT_REQUIRED Only contains documents with Document.content.
PUBLIC_WEBSITE The data store is used for public website search.

IdpConfig

Identity Provider Config.

JSON representation
{
  "idpType": enum (IdpType),
  "externalIdpConfig": {
    object (ExternalIdpConfig)
  }
}
Fields
idpType

enum (IdpType)

Identity provider type configured.

externalIdpConfig

object (ExternalIdpConfig)

External Identity provider config.

IdpType

Identity Provider Type.

Enums
IDP_TYPE_UNSPECIFIED Default value. ACL search not enabled.
GSUITE Google 1P provider.
THIRD_PARTY Third party provider.

ExternalIdpConfig

Third party IDP Config.

JSON representation
{
  "workforcePoolName": string
}
Fields
workforcePoolName

string

Workforce pool name. Example: "locations/global/workforcePools/pool_id"

DocumentProcessingConfig

A singleton resource of DataStore. It's empty when DataStore is created, which defaults to digital parser. The first call to DataStoreService.UpdateDocumentProcessingConfig method will initialize the config.

JSON representation
{
  "name": string,
  "chunkingConfig": {
    object (ChunkingConfig)
  },
  "defaultParsingConfig": {
    object (ParsingConfig)
  },
  "parsingConfigOverrides": {
    string: {
      object (ParsingConfig)
    },
    ...
  }
}
Fields
name

string

The full resource name of the Document Processing Config. Format: projects/*/locations/*/collections/*/dataStores/*/documentProcessingConfig.

chunkingConfig

object (ChunkingConfig)

Whether chunking mode is enabled.

defaultParsingConfig

object (ParsingConfig)

Configurations for default Document parser. If not specified, we will configure it as default DigitalParsingConfig, and the default parsing config will be applied to all file types for Document parsing.

parsingConfigOverrides

map (key: string, value: object (ParsingConfig))

Map from file type to override the default parsing configuration based on the file type. Supported keys:

  • pdf: Override parsing config for PDF files, either digital parsing, ocr parsing or layout parsing is supported.
  • html: Override parsing config for HTML files, only digital parsing and or layout parsing are supported.
  • docx: Override parsing config for DOCX files, only digital parsing and or layout parsing are supported.

ChunkingConfig

Configuration for chunking config.

JSON representation
{

  // Union field chunk_mode can be only one of the following:
  "layoutBasedChunkingConfig": {
    object (LayoutBasedChunkingConfig)
  }
  // End of list of possible types for union field chunk_mode.
}
Fields
Union field chunk_mode. Additional configs that defines the behavior of the chunking. chunk_mode can be only one of the following:
layoutBasedChunkingConfig

object (LayoutBasedChunkingConfig)

Configuration for the layout based chunking.

LayoutBasedChunkingConfig

Configuration for the layout based chunking.

JSON representation
{
  "chunkSize": integer,
  "includeAncestorHeadings": boolean
}
Fields
chunkSize

integer

The token size limit for each chunk.

Supported values: 100-500 (inclusive). Default value: 500.

includeAncestorHeadings

boolean

Whether to include appending different levels of headings to chunks from the middle of the document to prevent context loss.

Default value: False.

ParsingConfig

Related configurations applied to a specific type of document parser.

JSON representation
{

  // Union field type_dedicated_config can be only one of the following:
  "digitalParsingConfig": {
    object (DigitalParsingConfig)
  },
  "ocrParsingConfig": {
    object (OcrParsingConfig)
  },
  "layoutParsingConfig": {
    object (LayoutParsingConfig)
  }
  // End of list of possible types for union field type_dedicated_config.
}
Fields
Union field type_dedicated_config. Configs for document processing types. type_dedicated_config can be only one of the following:
digitalParsingConfig

object (DigitalParsingConfig)

Configurations applied to digital parser.

ocrParsingConfig

object (OcrParsingConfig)

Configurations applied to OCR parser. Currently it only applies to PDFs.

layoutParsingConfig

object (LayoutParsingConfig)

Configurations applied to layout parser.

DigitalParsingConfig

This type has no fields.

The digital parsing configurations for documents.

OcrParsingConfig

The OCR parsing configurations for documents.

JSON representation
{
  "enhancedDocumentElements": [
    string
  ],
  "useNativeText": boolean
}
Fields
enhancedDocumentElements[]
(deprecated)

string

[DEPRECATED] This field is deprecated. To use the additional enhanced document elements processing, please switch to layoutParsingConfig.

useNativeText

boolean

If true, will use native text instead of OCR text on pages containing native text.

LayoutParsingConfig

This type has no fields.

The layout parsing configurations for documents.

Methods

completeQuery

Completes the specified user input with keyword suggestions.

create

Creates a DataStore.

delete

Deletes a DataStore.

get

Gets a DataStore.

getCompletionConfig

Gets a CompletionConfig

getDocumentProcessingConfig

Gets a DocumentProcessingConfig.

getSiteSearchEngine

Gets the SiteSearchEngine.

list

Lists all the DataStores associated with the project.

patch

Updates a DataStore

trainCustomModel

Trains a custom model.

updateCompletionConfig

Updates the CompletionConfigs.

updateDocumentProcessingConfig

Updates the DocumentProcessingConfig.