REST Resource: projects.locations.ragCorpora.ragFiles

Resource: RagFile

A RagFile contains user data for chunking, embedding and indexing.

Fields
name string

Output only. The resource name of the RagFile.

displayName string

Required. The display name of the RagFile. The name can be up to 128 characters long and can consist of any UTF-8 characters.

description string

Optional. The description of the RagFile.

sizeBytes string (int64 format)

Output only. The size of the RagFile in bytes.

ragFileType enum (RagFileType)

Output only. The type of the RagFile.

createTime string (Timestamp format)

Output only. timestamp when this RagFile was created.

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".

updateTime string (Timestamp format)

Output only. timestamp when this RagFile was last updated.

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".

fileStatus object (FileStatus)

Output only. state of the RagFile.

Union field rag_file_source. The origin location of the RagFile if it is imported from Google Cloud Storage or Google Drive. rag_file_source can be only one of the following:
gcsSource object (GcsSource)

Output only. Google Cloud Storage location of the RagFile. It does not support wildcards in the Cloud Storage uri for now.

googleDriveSource object (GoogleDriveSource)

Output only. Google Drive location. Supports importing individual files as well as Google Drive folders.

directUploadSource object (DirectUploadSource)

Output only. The RagFile is encapsulated and uploaded in the UploadRagFile request.

slackSource object (SlackSource)

The RagFile is imported from a Slack channel.

jiraSource object (JiraSource)

The RagFile is imported from a Jira query.

sharePointSources object (SharePointSources)

The RagFile is imported from a SharePoint source.

JSON representation
{
  "name": string,
  "displayName": string,
  "description": string,
  "sizeBytes": string,
  "ragFileType": enum (RagFileType),
  "createTime": string,
  "updateTime": string,
  "fileStatus": {
    object (FileStatus)
  },

  // Union field rag_file_source can be only one of the following:
  "gcsSource": {
    object (GcsSource)
  },
  "googleDriveSource": {
    object (GoogleDriveSource)
  },
  "directUploadSource": {
    object (DirectUploadSource)
  },
  "slackSource": {
    object (SlackSource)
  },
  "jiraSource": {
    object (JiraSource)
  },
  "sharePointSources": {
    object (SharePointSources)
  }
  // End of list of possible types for union field rag_file_source.
}

GoogleDriveSource

The Google Drive location for the input content.

Fields
resourceIds[] object (ResourceId)

Required. Google Drive resource IDs.

JSON representation
{
  "resourceIds": [
    {
      object (ResourceId)
    }
  ]
}

ResourceId

The type and id of the Google Drive resource.

Fields
resourceType enum (ResourceType)

Required. The type of the Google Drive resource.

resourceId string

Required. The id of the Google Drive resource.

JSON representation
{
  "resourceType": enum (ResourceType),
  "resourceId": string
}

ResourceType

The type of the Google Drive resource.

Enums
RESOURCE_TYPE_UNSPECIFIED Unspecified resource type.
RESOURCE_TYPE_FILE File resource type.
RESOURCE_TYPE_FOLDER Folder resource type.

DirectUploadSource

This type has no fields.

The input content is encapsulated and uploaded in the request.

SlackSource

The Slack source for the ImportRagFilesRequest.

Fields
channels[] object (SlackChannels)

Required. The Slack channels.

JSON representation
{
  "channels": [
    {
      object (SlackChannels)
    }
  ]
}

SlackChannels

SlackChannels contains the Slack channels and corresponding access token.

Fields
channels[] object (SlackChannel)

Required. The Slack channel IDs.

apiKeyConfig object (ApiKeyConfig)

Required. The SecretManager secret version resource name (e.g. projects/{project}/secrets/{secret}/versions/{version}) storing the Slack channel access token that has access to the slack channel IDs. See: https://api.slack.com/tutorials/tracks/getting-a-token.

JSON representation
{
  "channels": [
    {
      object (SlackChannel)
    }
  ],
  "apiKeyConfig": {
    object (ApiKeyConfig)
  }
}

SlackChannel

SlackChannel contains the Slack channel id and the time range to import.

Fields
channelId string

Required. The Slack channel id.

startTime string (Timestamp format)

Optional. The starting timestamp for messages to import.

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".

endTime string (Timestamp format)

Optional. The ending timestamp for messages to import.

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".

JSON representation
{
  "channelId": string,
  "startTime": string,
  "endTime": string
}

JiraSource

The Jira source for the ImportRagFilesRequest.

Fields
jiraQueries[] object (JiraQueries)

Required. The Jira queries.

JSON representation
{
  "jiraQueries": [
    {
      object (JiraQueries)
    }
  ]
}

JiraQueries

JiraQueries contains the Jira queries and corresponding authentication.

Fields
projects[] string

A list of Jira projects to import in their entirety.

customQueries[] string

A list of custom Jira queries to import. For information about JQL (Jira Query Language), see https://support.atlassian.com/jira-service-management-cloud/docs/use-advanced-search-with-jira-query-language-jql/

email string

Required. The Jira email address.

serverUri string

Required. The Jira server URI.

apiKeyConfig object (ApiKeyConfig)

Required. The SecretManager secret version resource name (e.g. projects/{project}/secrets/{secret}/versions/{version}) storing the Jira API key. See Manage API tokens for your Atlassian account.

JSON representation
{
  "projects": [
    string
  ],
  "customQueries": [
    string
  ],
  "email": string,
  "serverUri": string,
  "apiKeyConfig": {
    object (ApiKeyConfig)
  }
}

SharePointSources

The SharePointSources to pass to ragFiles.import.

Fields
sharePointSources[] object (SharePointSource)

The SharePoint sources.

JSON representation
{
  "sharePointSources": [
    {
      object (SharePointSource)
    }
  ]
}

SharePointSource

An individual SharePointSource.

Fields
clientId string

The Application id for the app registered in Microsoft Azure Portal. The application must also be configured with MS Graph permissions "Files.ReadAll", "Sites.ReadAll" and BrowserSiteLists.Read.All.

clientSecret object (ApiKeyConfig)

The application secret for the app registered in Azure.

tenantId string

Unique identifier of the Azure Active Directory Instance.

sharepointSiteName string

The name of the SharePoint site to download from. This can be the site name or the site id.

fileId string

Output only. The SharePoint file id. Output only.

Union field folder_source. The SharePoint folder source. If not provided, uses "root". folder_source can be only one of the following:
sharepointFolderPath string

The path of the SharePoint folder to download from.

sharepointFolderId string

The id of the SharePoint folder to download from.

Union field drive_source. The SharePoint drive source. drive_source can be only one of the following:
driveName string

The name of the drive to download from.

driveId string

The id of the drive to download from.

JSON representation
{
  "clientId": string,
  "clientSecret": {
    object (ApiKeyConfig)
  },
  "tenantId": string,
  "sharepointSiteName": string,
  "fileId": string,

  // Union field folder_source can be only one of the following:
  "sharepointFolderPath": string,
  "sharepointFolderId": string
  // End of list of possible types for union field folder_source.

  // Union field drive_source can be only one of the following:
  "driveName": string,
  "driveId": string
  // End of list of possible types for union field drive_source.
}

RagFileType

The type of the RagFile.

Enums
RAG_FILE_TYPE_UNSPECIFIED RagFile type is unspecified.
RAG_FILE_TYPE_TXT RagFile type is TXT.
RAG_FILE_TYPE_PDF RagFile type is PDF.

FileStatus

RagFile status.

Fields
state enum (State)

Output only. RagFile state.

errorStatus string

Output only. Only when the state field is ERROR.

JSON representation
{
  "state": enum (State),
  "errorStatus": string
}

State

RagFile state.

Enums
STATE_UNSPECIFIED RagFile state is unspecified.
ACTIVE RagFile resource has been created and indexed successfully.
ERROR RagFile resource is in a problematic state. See errorMessage field for details.

Methods

delete

Deletes a RagFile.

get

Gets a RagFile.

import

Import files from Google Cloud Storage or Google Drive into a RagCorpus.

list

Lists RagFiles in a RagCorpus.